C++允许函数多态,有两个乃至n个不同的构造函数一点也不奇怪——编译器自然会根据你构造时提供的参数类型调用正确的构造函数。一般提供多个构造函数的理由是,根据用户的需要,可以将类对象初始为不同的状态——例如CFile的构造函数;另一个理由是,希望构造函数能够根据不同类型的参数初始化类对象——例如CString类。