1 回答
TA贡献1872条经验 获得超3个赞
你的问题更像是 动态数据初始化(运行时数据) VS 静态数据初始化(编译时数据) 静态数据初始化如: struct S { int i ; double d ; } ; S s = { 10, 12,76 } ; // 提前写好 在C++中动态数据的初始化通常用流来完成.流可以标准输入流(键盘),文件流,网络数据流(socket) #include #include #include using namespace std; struct Emp { char name[20] ; int age ; } ; istream& operator>>( istream& is, Emp& emp ) { is >> emp.name ; is >> emp.age ; return is ; } ostream& operator<<( ostream& os, const Emp& emp ) { cout << emp.name << " " << emp.age < endl ; return os ; } // 这是C++的方式,动态初始化一个结构,类,数组等容器. int main() { Emp e ; cin >> e ; // 从标准输入流中初始化struct Emp. 执行时输入. cout << e ; // 把struct Emp输出到命令行. Emp err[10] ;// 初始化数组结构 // 例如可以输入 Jack 28 Mark 25 Ann 12 回车 ctrl + z(结束) copy( istream_iterator( cin ), istream_iterator(), err ) ; }
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报