C++中如何初始化string类型的常数组?

2024-11-28 12:48:10
推荐回答(4个)
回答1:

由于类的常成员变量必须在构造函数初始化列表中初始化,但这里常成员变量是个数组,不能使用初始化列表初始化。你可以看看这里的两种替换方法:blog csdn net/simplebelief/article/details/5797465 空格处自行加点

回答2:

没有注意到你说要是常数组
没有办法直接初始化常成员数组,除非你把它声明为静态

要不就只能
const string[2] str{"AM","PM"};
class time
{
private:
const string s[2];
public:
time():s(str){};
}

回答3:

你这个数组可以声明为静态成员变量,在类外赋值

class time {
private:
static const string s[2];
};
const string time::s[2] = {"A", "B"};

回答4:

const string s[2]{"AM","PM"};c+11可以这样要include