istream的&安培; getline(istream& is,string& str,char delim);
对于string :: getline,没有参数可以通过限制字符数来防止溢出。也许cin.getline(str,length)可以弥补这个问题,但我想知道是否还有其他方法使用string :: getline。
答案 0 :(得分:1)
std::getline()
函数没有最大长度限制的参数。 std::string
本质上是动态的,它的大小随着附加而增长。 std::getline()
的最大限制为std::string::max_size()
。
如果要限制行长度,则必须使用std::istream::getline()
方法。
答案 1 :(得分:0)
是的,因为没有必要,因为std::getline
根据需要管理字符串,以防止溢出。
此外,请记住std::string
能够轻松扩大规模。