c++11 - 如何将用户输入变量插入向量中的同一位置?
问题描述
//主驱动
int main(){
//如果我运行下面的代码。
vector<string> A = {"My name is Muzaib.\n Hello"};
cout << A[0];
//它将打印我的名字是Muzaib
// 你好
//但我想知道的是,除了用户输入,我该如何做同样的事情?
string name, age;
cout << "Enter name: ";
getline(cin,name);
cout << "\nEnter age: ";
getline(cin,age);
vector<string> B = {"name \n age"} //remember I want it in the same spot.
cout << B[0]
返回0;}
解决方案
在我看来,你想从 构建一个字符串name + '\n' + age
,所以:
std::vector<std::string> B = {name + '\n' + age};
我建议将姓名和年龄存储为单独的实体。例子:
struct foo {
std::string name;
int age;
};
std::ostream& operator<<(std::ostream& os, const foo& f) {
return os << f.name << '\n' << f.age;
}
std::vector<foo> B = {{name, std::stoi(age)}};
std::cout << B[0] << '\n';
推荐阅读
- ios - 有没有办法使用 unarchiveTopLevelObjectWithData() 取消归档保存在 userdefaults 中的对象
- ruby-on-rails - ActiveModel 序列化器 JSON 包括“属性”键
- python - 可以以编程方式重命名一个类吗?
- vue.js - 在vue js中递归显示下拉菜单
- python - 如何制作密钥和填充?(AES-256)
- python - “SQLAlchemy”的实例没有“列”成员(无成员)
- c# - 如何修复 VS 代码中的自定义标签助手问题?
- python - 重塑非常大的数据框
- android - 如何在listView上从firestore添加两个不同的文档
- php - Laravel 会话 Cookie 过期更改