实现我自己的获取线函数



美好的一天,我正在尝试编写一个获取行函数,该函数将接受用户输入并将其存储到字符数组中。下面的代码是我到目前为止想出的代码,但不幸的是,我的代码只是位于命令提示符处。我不确定出了什么问题,我已经尝试了许多方法,但我似乎无法让它工作。任何帮助将不胜感激,提前感谢您。

此外; 这是重载函数 += 的代码;

void MyString::operator +=(char addend)
{
    reserve(getLength() + 2);
    char ch[1] = { addend };
    strncat(sequence, ch, 1);
};

我的获取线函数:

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;
};
 istream& get(char& ch);

该行将声明一个函数。 你需要调用一个函数:

while (ins.get(ch) && ch != 'n')
{
    target += ch;
}

最新更新