More Effective C++之4

原创 2006年05月30日 17:05:00
条款4:非必要不提供default constructor

       对这一条款之中的详情,我处于半解之中。首先要说的是,关于default constructor在不显示提供的情况下,不同编译器存在不同的策略。我不认为所有编译器在这里会提供同样的方法。如果显示的提供这样的方法。我觉得未见得不好。我拿VC6作了一个测试,检测VC6的策略。测试表明default constructor会递归调用成员对象的构造函数,无论有没有显式给出这样一个构造函数。可以说,在VC6中这个问题不是特别严重。因为VC6在自动生成类的时候,会给出默认构造函数。但在其他编译器下,目前不能确认这个问题。

《More Effective C++》读书笔记-技术

25、将构造函数和非成员函数虚化1、这里所谓的虚拟构造函数,并不是真的指在构造函数前面加上 virtual 修饰符,而是指能够根据传入不同的参数建立不同继承关系类型的对象。class NLCompon...
  • will130
  • will130
  • 2016年05月02日 12:27
  • 2794

《Effective C++》和《More Effective C++》汇总

More Effective C++读书笔记 条款1:指针与引用的区别 二者之间的区别是:在任何情况下都不能用指向空值的引用,而指针则可以;指针可以被重新赋值以指向另一个不同的对象,但...
  • zhu2695
  • zhu2695
  • 2013年06月22日 20:29
  • 2033

More Effective C++ 读书摘要(目录索引)

一、基础议题 Item 1. 区分指针和引用Item 2. 优先考虑C++风格的类型转换Item 3. 决不要把多态用于数组Item 4. 避免不必要的默认构造函数二、运算符Item 5. 小心用户自...
  • thy38
  • thy38
  • 2009年04月26日 10:23
  • 1308

《More Effective C++》读书笔记-异常

9、利用destructors 避免泄漏资源使用指针时,如果在delete指针之前产生异常,将会导致不能删除指针,从而产生资源泄漏。解决办法: 1、使用try-catch语句。int *pi = n...
  • will130
  • will130
  • 2016年04月30日 19:24
  • 277

《More Effective C++》条款27:如何让类对象只在栈(堆)上分配空间?

昨天一个同学去网易面试C++研发,问到了这么一个问题:如何限制一个类对象只在栈(堆)上分配空间? 一般情况下,编写一个类,是可以在栈或者堆分配空间。但有些时候,你想编写一个只能在栈或者只能在堆上面分...
  • hxz_qlh
  • hxz_qlh
  • 2013年10月26日 21:27
  • 6093

More Effective C++学习笔记(4)-效率

主题 概要 C++ More Effective C++ 效率 编辑 时间 新建 20170121 序号 参考资料 1 More ef...
  • shaozhenged
  • shaozhenged
  • 2017年01月21日 20:23
  • 403

more effective c++--引用计数

引用计数是这样一个技巧,它允许多个有相同值的对象共享这个值的实现。这个技巧 有两个常用动机。第一个是简化跟踪堆中的对象的过程。一旦一个对象通过调用 new 被分配 出来,最要紧的就是记录谁拥有这个对象...
  • xdgs_2005
  • xdgs_2005
  • 2015年04月05日 14:22
  • 369

Effective C++: scott Meyers的几句话

前几天,慕名买了一本关于C++的一本书, 即Scott Mey
  • a130737
  • a130737
  • 2014年07月31日 13:21
  • 517

More Effective C++----技巧 & (25)将构造函数和非成员函数虚拟化

技巧 本书涉及的大多数内容都是编程的指导准则。这些准则虽是重要的,但是程序员不能单靠准则生活。有一个很早以前的卡通片叫做“菲利猫”(Felix the Cat), 菲利猫无论何时遇到困难,它都会拿...
  • qianqin_2014
  • qianqin_2014
  • 2016年05月06日 23:30
  • 2488

c++设计中可以利用重载避免隐式类型转换

首先,先看一个例子: class UPInt { public: UPInt(); UPInt(int value); ... } const UPInt operator +(cons...
  • qq_37185716
  • qq_37185716
  • 2017年08月05日 00:16
  • 98
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:More Effective C++之4
举报原因:
原因补充:

(最多只允许输入30个字)