После добавления cout в качестве оператора друга С ++ по-прежнему показывает ошибку 1) cout неоднозначен. Зачем? - PullRequest
1 голос
/ 21 июня 2020

Cout выглядит неоднозначным даже после добавления cout в качестве дружественного оператора. Прилагается часть моего кода, хотя я могу помочь понять, в чем проблема. IDE - это визуальная студия.

Я попытался добавить друга << в класс, называемый стеком, и в некоторых функциях стека, таких как pu sh, мне нужно указывать сообщения в строке, например «переполнение стека». Однако здесь показано, что cout является ошибкой даже после добавления cout в качестве друга. Я не знаю, что пошло не так, может кто-нибудь помочь? Очень признателен. </p>

{


friend ostream &operator << (ostream &outs, const string &y);
};

ostream &operator << (ostream &outs, const string &y) {
outs << y;
return outs;

}
bool Stack::push(int x)
{
if (top >= (2 - 1)) {
    cout << "Stack Overflow";
    return false;
}
...