关于初始化
class xxx{
char *name;
};
对于这个类,如何用Bob将名字初始化,我用了很多方式,都出错。请大家多提提建议
2012-03-26 23:36
这是动态分配的
这是静态分配的
2012-03-27 12:15
2012-03-27 13:02

2012-03-27 14:18
2012-03-27 15:18
程序代码://这是静态分配的
#include<iostream>
#include<string>
using namespace std;
class X{char *name;
X(){
char a[20]="Bob"; // 这里把函数内声明的a的地址给了name。构造函数退出后这个地址已是无效的。
name=&a[20]; // 而且撇开上面一点不谈这里也应该是&a[0]或a而不是&a[20],这不仅逻辑不对而且访问也越界了
}
};
2012-03-27 19:16
2012-03-27 22:10
2012-03-28 10:08
2012-03-28 10:08
2012-03-28 12:59