摘要:
环境:xp+vs2010问题:在初始化类参数的过程中,可能需要多个重载的构造函数,但是有很多变量初始化代码又是一样的。肯定需要写一次,等待其他构造函数来调用即可。经过调试发现,在classA(int i)中调用classA(),可以发现程序在classA()运行时赋值、初始化等都成功了。一旦classA()运行结束返回classA(int i),初始化的值又突然变为一个随机数了,因此猜想在调用时出错了。解决:1.经过查阅资料发现,在构造函数中直接调用另一个构造函数,并没有分配新的内存,数据没有保留下来。2.因此正确的调用方法是:classA::classA(int i){ new (th... 阅读全文
摘要:
环境:vs2010问题:今天编代码过程中发现好多很奇怪的错误,我以为昨天调了下编译器才出问题了。搞了好久,代码注释掉很多还是不行,并且错误还一直在变化。问题大概如下:(照片上传不了)1.error C2628: "Class后面接"void"是非法的(是否忘记了";"?)2.error C3874: "main"的返回类型应为"int"而非"KnapSackClass"3,error C2533: "Class::{ctor}":构造函数不能有返回类型4.Intel 阅读全文