#include <vector>
#include <iostream>
#include <string>
using namespace std;
struct A{
int x;
double y;
string z;
A(int _x=0,double _y=0,string _z=""):x(_x),y(_y),z(_z){}
A(const A &t):x(t.x),y(t.y),z(t.z){}//copy constructor
friend ostream & operator<<(ostream &out, A &obj){
out<<"x:"<<obj.x<<", y:"<<obj.y<<", z="<<obj.z<<endl;
return out;
}
friend istream & operator >> (istream &in, A &obj){
in>>obj.x>>obj.y>>obj.z;
if(!in)
obj=A();
return in;
}
};
void test()
{
vector<A> v;
A a;
cin>>a;
v.emplace_back(0,1.0,"2");
v.emplace_back(a);
for(auto i=0;i<v.size();++i){
cout<<v[i];
}
}
吐槽优快云的标题字符限制,<<和>>不能作为标题内容,不然就提示输入有误。气哭。

本文介绍了一个包含整型、浮点型和字符串成员的C++结构体A,并展示了如何使用结构体实例化对象,以及如何通过重载输入输出流实现结构体的数据读写。此外,还演示了如何利用向量容器存储结构体对象,并进行数据的动态添加。
7862

被折叠的 条评论
为什么被折叠?



