C++ - 调用'getline'没有匹配函数

C++ - No matching function for call to 'getline'

本文关键字:函数 C++ getline 调用      更新时间:2023-10-16

我无法找出文件istream getline()调用的正确语法

我已经尝试了很多不同类型的参数调用getline()的变化,在看了几个不同的文档之后,它就是不起作用。

std::ifstream in("file.txt");
char tmp;
std::getline(tmp, in);

这个结果是

../directory/file.cpp:178:2: error: no matching function for call to 'getline'
    std::getline(tmp, in);
    ^~~~~~~~~~~~

但是其他文档说

std::ifstream in("file.txt");
char tmp;
in.getline(tmp);

也会吐出

../directory/file.cpp:179:5: error: no matching member function for call to
  'getline'
    in.getline(tmp);
    ^~~~~~~~~~~~

我所要做的就是一行一行地读文件,但我还是看不懂。有人能告诉我正确的方向吗?如有需要,我可以提供更多信息。

getline()读取string,但传递给它单个字符。

像这样使用:

std::ifstream in("file.txt");
std::string tmp;
std::getline(in, tmp);