正在编译...
Human.cpp
Human.cpp(5) : error C2758: “Human::name” : 必须在构造函数基/成员初始值设定项列表中初始化
e:NETSmall_codeTestInitHuman.h(13) : 参见“Human::name”的声明
Human.cpp(5) : error C2758: “Human::ID” : 必须在构造函数基/成员初始值设定项列表中初始化
e:NETSmall_codeTestInitHuman.h(14) : 参见“Human::ID”的声明
fmain.cpp
Date.cpp
正在生成代码...
生成日志保存在“file://e:NETSmall_codeTestInitDebugBuildLog.htm”中
TestInit - 2 错误,0 警告
---------------------- 完成 ---------------------
生成:0 已成功, 1 已失败, 0 已跳过
--------------------------------------------------------------------------------
*/
因为这里涉及的是仅仅的c++语法,我就不多费口舌了,如何改正,希望您能动手试试,一定要动手,不要想当然哦~~~
当然,如果您是爱问题的人,我想您可以这样深究一下:设计c++语言时,为什么诸如int类型成员变量能提供默认初始化,而它们却不能;从编译角度,刻意给它们提供如int类型般的初始化会有什么困难和问题?
下面详细谈什么是资源浅拷贝问题。沿袭c的习惯,c++对系统自分配的资源进行统一管理,但是,用户申请的资源,则有用户来释放。
比如:
userType *p=new userType(/*---*/);
//...
delete p;
//delete释放一般是不可忘的
单独的变量或许对您来说是不成问题的。但在类中,这些情况就变的相当复杂。处理不好,您的系统要么就是因为内存泄露而运行不下去,而要么就是异常频频发生。
我们先来看一些c++的默认操作:
//...
class OneClass {
int _value;
public:
OneClass(int _val=0):_value(_val) {}
~OneClass() {}
|
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容 本站提醒:不要进行人身攻击。谢谢配合。 |