Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4517088
  • 博文数量: 356
  • 博客积分: 10458
  • 博客等级: 上将
  • 技术积分: 4734
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-24 14:59
文章分类

全部博文(356)

文章存档

2020年(17)

2019年(9)

2018年(26)

2017年(5)

2016年(11)

2015年(20)

2014年(2)

2013年(17)

2012年(15)

2011年(4)

2010年(7)

2009年(14)

2008年(209)

分类: C/C++

2008-08-27 09:13:48

,第59页最后和第60页开头,有这么句话
:There are no member or base class objects with a copy constructor that need to be invoked. Nor is there a virtual base class or virtual function associated with the class. So, by default, a memberwise initialization of one Point3d class object with another result in a bitwise copy.--------这句话给我感觉是memberwise集要包含bitwise

就书论事的话,感觉书中并没有说清楚两者的关系,一般理解是二者是不相交的,但是书中有些地方给我的第一映像是memberwise集包含了bitwise集,如P49的default memberwise initialization ,还有P220第三段,更直白了:如果我们不对POint供应一个copy assignment
operator,而光是依赖默认的memberwise copy...........

但是真理如何期待大家讨论了.
 
另外找了好几处资料都支持

引用一小段:
The methods for default assignment and initialization are "memberwise assignment" and "memberwise initialization," respectively.
阅读(5267) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-09-18 21:25:15

bitwise我认为就是逐bit复制,对于有这种语义的对象不需要调用函数,也就是memberwise语义,对于拥有memberwise语义就要调用函数,对于data member copy一份到新的对象,对于 class member递归调用copy 构造函数,自己定义的或者是系统生成的。我的理解。

hongszh2009-04-02 10:25:29

从P49的default memberwise initialization一节来看,memberwise是把每一个内建的或派生的data member(比如一个指针或一数组)的值,从某一个object拷贝一份到另一个object身上,不过它并不会拷贝其中的member class object,而是一递归的方式施行memberwise initialization。所以我的理解是:default memberwise initialization就是bitwise copy。