【发布时间】:2016-03-01 16:34:31
【问题描述】:
我在下面有一个字符串类:
class Mystring
{
private:
char *letter;
public:
friend ostream & operator <<(ostream &out, const Mystring& s);
friend istream & operator >>(istream &in,Mystring& s);
};
这是在主函数中:
int main()
{
Mystring s[10];
cin.get(s,10);
cout << s;
_getch();
return 0;
}
当我使用 cin.get 时出现这样的错误
错误 1 错误 C2664: 'std::basic_istream> &std::basic_istream>::get(std::basic_streambuf> &,_Elem)' : 无法将参数 1 从 'Mystring' 转换为 'char *' c:\users\thai\documents\visual studio 2013\projects\overloading\overloading\main.cpp 11 1 重载
我想我应该为 cin.get() 创建一个重载,但是如何??
【问题讨论】:
-
为什么不使用
>>运算符?
标签: c++ c++11 operator-overloading overloading