gpt4 book ai didi

C++输入重载陷入while循环

转载 作者:行者123 更新时间:2023-11-30 03:55:10 34 4
gpt4 key购买 nike

所以基本上在 C++ 中,我尝试使用运算符重载将多个对象输入到 Vector 中。在我的 main ( ) 中,我有一个 while 循环,它从文本文件中读取书籍,然后将它们存储在以下字符串中:

 String name, title, pages, classcode, status;

然后我去创建我的 Book 对象:

Book b(name,title pages,classcode, status);

完成此操作后,我然后使用 cin 使用运算符重载将对象输入到我的 vector 中。

cin >> b;

我的重载函数如下所示:

istream &operator>>( istream  &input, Book &b )
{


input >> b.classCode;
input >> b.author;
input >> b.title;
input >> b.status;
input >> b.numPages;


return input;
}

我正在尝试使用运算符重载将对象存储到 vector 中,但每次我运行该程序时,它只会存储一个 Book 对象。

最佳答案

存储 Book 的多个实例在std::vector<Book>你可以编写如下代码:

std::vector<Book> v;
Book b;
while (std::cin >> b)
v.push_back(b);

关于C++输入重载陷入while循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29184694/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com