美好的一天, 我正在尝试编写一个get line函数,它将获取用户输入并将其存储到字符数组中。下面的代码是我到目前为止所提出的,但不幸的是我的代码只是在命令提示符下。我不确定是什么问题,我尝试了很多方法,但我似乎无法让它发挥作用。任何帮助将不胜感激,谢谢你。
另外;这是重载函数的代码+ =;
void MyString::operator +=(char addend)
{
reserve(getLength() + 2);
char ch[1] = { addend };
strncat(sequence, ch, 1);
};
我的getline功能:
istream& getline(istream& ins, MyString& target)
{
char ch = 0;
istream& get(char& ch);
while (ins && ch != '\n')
{
istream& get(char& ch);
target += ch;
};
return ins;
};
答案 0 :(得分:1)
istream& get(char& ch);
该行将声明一个函数。您需要调用一个函数:
while (ins.get(ch) && ch != '\n')
{
target += ch;
}