gpt4 book ai didi

c++ - 如何使用 cin.getline 修复 "No instance of overloaded function"错误?

转载 作者:行者123 更新时间:2023-11-30 04:27:48 25 4
gpt4 key购买 nike

string add_text()
{
const int string_size(30);
string add_string;
cin.getline (add_string,string_size,'\n');
return add_string;
}

当我用上面的函数编译程序时,出现错误。请注意,我在程序的前面使用了 using namespace std;。如果有帮助,我正在使用代码块,并且还尝试使用 Visual Studio 11 Professional Beta 编译程序。

错误:

C:\Users\Jonathan\Documents\Code_Blocks\test_12\main.cpp|32|error: no matching function for call to 'std::basic_istream<char, std::char_traits<char> ::getline(std::string&, const int&, char)'|

在此问题上的任何帮助将不胜感激,提前致谢!

最佳答案

您正在调用 std::istream::getline(char *, streamsize) - 你可以看到它需要一个 char * 而不是你传递的 std::string

使用std::getline(std::istream&, std::string&, char)相反,像这样:

getline(cin, add_string, '\n');

关于c++ - 如何使用 cin.getline 修复 "No instance of overloaded function"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10625701/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com