C ++字符串初始化与字符副本?

时间:2013-03-23 21:15:25

标签: c++ string

我在学习C ++。 我的教科书是从控制结构到第7对象的C ++开始的。 在字符串类说明中,有一个代码

string lineFull('z', 20); 
// Defines a string object named lineFill initialized with 10 'z' characters

我在计算机上尝试了这段代码,但无效。这段代码对吗?或对此的任何依赖/要求?

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:3)

看起来正确的语法是

string lineFull(20, 'z')
来自std::string constructor docs

答案 1 :(得分:2)

此构造函数的原型是:

std::string::string(size_t n, char c);

所以你需要:

string lineFull(20, 'z');