gpt4 book ai didi

c++ - 使用 const 字符串时创建默认构造函数

转载 作者:行者123 更新时间:2023-11-30 01:15:31 26 4
gpt4 key购买 nike

我有一个看起来像这样的类:

Person(int pID,
int zipCode,
float ySalary,
const string& fName,
const string& mName,
const string& lName)

当我尝试创建默认构造函数时,如下所示:

Person::Person(void){
zipCode = NULL;
pID = NULL;
ySalary = NULL;
fName = "";
mName = "";
lName = "";
}

我收到一条错误消息,指出没有匹配 const std::string = const char[1] 的运算符“=”;

最佳答案

需要使用成员初始化列表来初始化const引用成员变量:

Person::Person(void) :
zipCode(NULL) ,
pID(NULL) ,
ySalary(NULL) ,
fName("") ,
mName("") ,
lName("") {
}

我建议始终使用成员初始化列表语法,优先于构造函数主体中的赋值。例如,请参见此处:What is the advantage of using initializers for a constructor in C++?

关于c++ - 使用 const 字符串时创建默认构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28267036/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com