【发布时间】:2023-03-10 18:50:01
【问题描述】:
使用 getline() 函数时出现以下错误:
没有重载函数“getline”的实例与参数列表匹配
在一个名为“时间”的类中,我在读取以下输入时使用它:
istream & operator >> (istream & input, Time & C) /// An input stream for the hour minutes and seconds
{
char ch;
input >> C.hour >> ch >> C.minute >> ch >> C.second;
getline(input,C.ampm,',');
return input; /// Returning the input value
}
这很好用,但我也想将它用于另一个名为“Shares”的类:
istream & operator >> (istream & input, Shares & C) /// An input stream for the day, month and year
{
char ch;
input >> C.price >> ch >> C.volume >> ch >> C.value >> ch;
getline(input,C.value,',');
return input; /// Returning the input value
}
但是,“shares”类中的 getline 函数给了我错误。 两个类都在使用库:
#include <iostream>
#include <string>
我该如何克服这个问题? 谢谢
【问题讨论】:
-
C.apmp 和 C.value 有哪些类型?
-
ampm 是字符串,值是双精度
-
我认为这可能是问题所在。该 getline 期待 instream,string
-
我不太明白你想做什么。 getline 上面的那行不是已经在解析你的值了吗?
标签: c++ getline overloading