【发布时间】:2019-04-13 11:26:02
【问题描述】:
我想声明一个大小为“N”的变量。还有一个固定长度的字符串'N'。 另外,如何在运行时为该字符串赋值?
喜欢,我试过了 辛>>N; 字符串 str(4);
没有匹配函数调用'std::__cxx11::basic_string::basic_string(int)'
【问题讨论】:
我想声明一个大小为“N”的变量。还有一个固定长度的字符串'N'。 另外,如何在运行时为该字符串赋值?
喜欢,我试过了 辛>>N; 字符串 str(4);
没有匹配函数调用'std::__cxx11::basic_string::basic_string(int)'
【问题讨论】:
好吧,std::string 中没有只接受大小参数的构造函数。您还需要提供一个char 值,该值将用作字符串中每个字符的初始值。例如,要有一串N 空格,你可以这样做:
std::string str(N, ' ');
但是,字符串不会是固定大小的。您仍然可以稍后更改其长度:
str += ' '; // Now it contains N + 1 spaces.
你不能有一个固定大小的std::string,除非你把它设为const。但是如果你这样做了,那么你就不能再改变字符串的内容了。
【讨论】: