类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
定义了一个类:
class str
{
public:
str();
virtual ~str();
private:
char *pBuff;
};
这里的pBuff好象是不能给赋与初值的吧,好象不能写成char *pBuff = NULL。
那么我如何在函数里判断这个指针是否为空呢?多谢。
网友回答:
你在str()的函数体里写上pBuff = NULL;然后判断的时候用if(pBuff == NULL)就可以了。
类成员的初始化添加到类的构造函数中
就是你的 str(); 这个函数里
str();构造函数
中加pBuff = NULL;
你可以在构造函数中给它初值:
str::str()
{
pBuff = NULL;
}
或者,如果针对一个字符串类的话,你也可以这样初始化它:
str::str(const char * string)
{
if (string == NULL)
pBuff = new char(\0);
else
pBuff = strcpy(new char[strlen(string) + 1], string);
}
大哥,构造函数啊。初始化列表啊。
不是都可以吗???
写个构造函数来初始化.
养成习惯,指针定义的时候赋值null,使用的时候判断。
后面的 pBuff(0) 就是初始化列表。
看看 C++ 的语法。
str::str():pBuff(0)
{
}
同楼上