2013年12月8日

The Semantics of Constructors(拷贝构造函数之编译背后的行为)

摘要: 本文是 Inside The C++ Object Model's Chapter 2 的部分读书笔记。有三种情况,需要拷贝构造函数:1)object直接为另外一个object的初始值2)object作为函数以值传递的参数3) object以函数返回值形式返回如 果class没有提供一个explicit copy constructor时,编译器会以default memberwise initialization,也就是把每一个内建的或者派生的data member的值,从某个object直接拷贝到另外一个object上,对于member class object,以递归的方式施行m 阅读全文

posted @ 2013-12-08 21:53 anzhsoft 阅读(174) 评论(0) 推荐(0) 编辑

C++对象模型(二):The Semantics of Copy Constructors(拷贝构造函数之编译背后的行为)

摘要: 本文是 Inside The C++ Object Model's Chapter 2 的部分读书笔记。有三种情况,需要拷贝构造函数:1)object直接为另外一个object的初始值2)object作为函数以值传递的参数3) object以函数返回值形式返回如果class没有提供一个explicit copy constructor时,编译器会以default memberwise initialization,也就是把每一个内建的或者派生的data member的值,从某个object直接拷贝到另外一个object上,对于member class object,以递归的方式施行me 阅读全文

posted @ 2013-12-08 21:50 anzhsoft 阅读(145) 评论(0) 推荐(0) 编辑

The Semantics of Constructors: The Default Constructor (默认构造函数什么时候会被创建出来)

摘要: 本文是 Inside The C++ Object Model, Chapter 2的部分读书笔记。C++ Annotated Reference Manual中明确告诉我们: default constructor会在需要的时候被编译器产生出来。注意,这里是编译器需要,而不是程序需要。后来的C++ Standard 95修改了这种说法,但是实质上仍是相同的: For class X, if there is none user declared constrator, one default constructor will be implicitly generated by the Co 阅读全文

posted @ 2013-12-08 10:33 anzhsoft 阅读(205) 评论(0) 推荐(0) 编辑

C++对象模型(一):The Semantics of Constructors The Default Constructor (默认构造函数什么时候会被创建出来)

摘要: 本文是 Inside The C++ Object Model, Chapter 2的部分读书笔记。C++ Annotated Reference Manual中明确告诉我们: default constructor会在需要的时候被编译器产生出来。注意,这里是编译器需要,而不是程序需要。后来的C++ Standard 95修改了这种说法,但是实质上仍是相同的: For class X, if there is none user declared constrator, one default constructor will be implicitly generated by the Co 阅读全文

posted @ 2013-12-08 10:24 anzhsoft 阅读(143) 评论(0) 推荐(0) 编辑

导航