我正在阅读通过Ivor Horton's "Beginning C++"。在第7章,有关于字符串初始化这个例子:使用字符串的填充构造函数与初始化程序列表
但是,您可以初始化与任意数量的指定字符的实例的字符串。你可以这样定义并初始化一个沉睡的时间
string
对象:string sleeping {6, 'z'};
的
string
对象,sleeping
,将包含"zzzzzz"
。字符串长度将为6.
对于我的编译器Apple LLVM version 6.0 (clang-600.0.57)
,该示例不能像描述的那样工作。相反,它的工作原理就好像想给我:
string sleeping {"\6z"};
使用string
's "from c-string" constructor, rather than its "fill" constructor。
我知道我可以用括号使用填充构造:
string sleeping(6, 'z');
但只是为了满足我的好奇心,是有什么办法可以使用填充构造函数与初始化列表,如书中的例子吗?
我不能相信,把它做成一本书。这是错误的。 – AndyG