——设置对象的值既能够经过初始化,也能够采用赋值的方式函数
Stock stock; // 声明一个Stock对象 ... stock = Stock("Boffo Objects", 2, 2.0); // 对stock从新赋值(或能够理解为初始化)
调用构造函数来建立一个临时对象,而后将该临时对象复制到stock中,并丢弃它(即便用了临时对象后编译器选择时间删除临时对象,并为临时对象调用析构函数)spa
stock2 = stock1; // object assignment
在默认状况下,将一个对象赋值给同类型的另外一个对象时,C++将源对象的每个数据成员的内容复制到目标对象中相应的数据成员中对象
若是既能够经过初始化,也能够经过赋值来设置对象的值,则应采用初始化方式。一般这种方式的效率更高。blog
在C++11中,可将列表初始化语法用于类。只要提供与某个构造参数的参数列表匹配的内容,并用大括号将它们括起:ip
Stock hot_tip = {"Derivatives Plus Plus", 100, 45.0}; // 与使用参数列表直接初始化数据成员不一样,这里做为函数参数使用 Stock jock {"Sport Age Storage, Inc"}; Stock temp {};