C++ 初始化一个变量并用 std::cin 赋值

标签 c++ cin

这可能是一个有点愚蠢的问题,但我在其他任何地方都找不到任何类型的答案。我正在用 C++ 编写代码(我认为至少 11)并且必须使用:

int N;
cin >> N;  

我的问题是是否有一种优雅的方式将它写成一行命令?我已经知道我可以删除换行符并将它们放在一行中,但这不会让我在 oneliner 循环中使用它:

for(int i=0; i<10; i++) myVector.push_back();

最佳答案

另一种使用算法和迭代器的替代方法:

std::copy_n(std::istream_iterator<int>{std::cin}
           ,10
           ,std::back_insert_iterator<std::vector<int>>{myVector});

关于C++ 初始化一个变量并用 std::cin 赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47960696/

相关文章:

c++ - 循环中的 cin 函数出现问题

c++ - C++ 中的 operator new、new_handler 函数

c++ - 当我使用 glutIdleFunc 尝试将立方体放在不同的 x 轴上时,3d 立方体在 x 轴上跳跃

c++ - 没有正确处理用户输入

c++ - 有没有办法强制cin提交?

c++ - 使用可变目录在 C++ 中复制文件

c++ - 为什么下面的多线程代码会导致 SIGABRT ?

c++ - C++11 中的最终枚举类

android - QtWebsocket/JWebsocket大数据问题

C++ 输入一个 char 而不是 int 导致死循环。如何检查错误的输入?