我知道,我知道。 这个问题之前已经被问过了,但是我看了所有的答案,似乎都不能解决我的问题。当我使用getline函数获取文件中一行的内容时,它不起作用。
getline(file, line);
这里声明了'File':
ifstream File;
File.open("fruit.txt");
这里声明了'line':
int line = 0;
使用此代码时,Getline 出现了红色下划线,并显示以下消息:
getline
no instance of overloaded function "getline" matches the argument list
argument types are :(std::ifstream, int)
这意味着没有getline实例具有文件流和整数的参数列表。
这毫无意义,因为所有其他关于此问题的问题都明确说明了参数是文件流和整数。
我做错了什么?
编辑:
以下是完整代码:
ifstream fruitFile;
fruitFile.open("fruit.txt");
int line = 0;
int C_FRUIT = getline(fruitFile, line);
fruitFile.close();
第一行应该是一个数字,我需要它。
std::getline
和std::ifstream::getline
。而且,我很确定后者不是你想象中的那样工作。请查阅某些文档,详细了解这两个函数的定义和用法。(另外,不要使用std::ifstream::getline
。) - Baum mit Augengetline
函数是干什么的吗?(提示:它获取一行文本。) - David Schwartz