`
isiqi
  • 浏览: 16760272 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Effective C++ 2

阅读更多

当自己声明了一个构造函数,则default构造函数将不会自动生成。
C++不允许reference改指向不同对象。
如果想要避免对象赋值,则可将赋值构造函数在private中声明。

接下来要讨论的是虚析构函数问题。

class TimeKeeper{
public:
TimeKeeper();
~TimeKeeper();
...
};
class AtomicClock:public TimeKeeper{};
class WaterClock: public TimeKeeper{};
class WristWatch:public TimeKeeper{};

TimeKeeper *getTimeKeeper(); //function,返回指向TimeKeepr派生类。

TimeKeeper* ptk=getTimeKeeper();
delete ptk; //调用~TimeKeeper();从而导致局部删除。
因此引入virtual析构函数。

virtual析构函数使用地点:当此类为基类时。
反之:被当做基类的类要保证析构函数析构正确,即要有virtual析构函数。

想要使类变为抽象类,最方便的方法可以是将析构变为pure virtual,并给出定义。

在构造函数和析构函数中不能调用virtual函数,不会像以上说的那样强。在此时,virtual就是一般函数。

类继承的声明过程,先调用基类构造函数,再派生类构造函数,再析构派生类,最后析构基类。

避免代码重复的办法,声明一个private函数init();将共有的代码放入。

令赋值操作符函数(成员函数)返回reference-to *this;以后会讲到,非成员函数的赋值函数不可以返回reference

下面讲个笑话,如果你自己定义copying函数,则如果你出错,编译器为了报复,不会提醒你错误。

分享到:
评论

相关推荐

    Effective C++ 2ndEd

    《Effective C++ 2ndEd》是C++编程领域中一本经典的著作,由Scott Meyers撰写,台湾地区的翻译版提供了中文阅读的便利。这本书旨在帮助程序员写出更高效、更易于理解和维护的C++代码,通过一系列实践性的编程指导...

    effective c++ 2nd 中文

    2. **智能指针**:C++11引入了智能指针,如`std::unique_ptr`, `std::shared_ptr`和`std::weak_ptr`,它们自动管理对象的生命周期,防止悬挂指针和内存泄漏。理解如何正确使用这些智能指针,对于编写安全的代码至关...

    Effective C++2e

    《Effective C++2e》是一本深入探讨C++编程实践的经典书籍,由Scott Meyers撰写。这本书主要关注如何编写高效、可靠且易于维护的C++代码。Meyers提出了55个具体的编程准则,旨在帮助程序员更好地理解和利用C++语言的...

    Effective C++ 2e CN

    《Effective C++ 2e CN》是C++编程领域中一本极为重要的著作,由Scott Meyers撰写,中文第二版提供了对中国程序员来说更为亲切的阅读体验。这本书深入浅出地介绍了如何编写更高效、更可靠、更易于维护的C++代码。...

    Effective_C++2e.rar

    《Effective C++ 2nd Edition》是Scott Meyers的经典之作,深入浅出地探讨了C++编程中的最佳实践和常见陷阱。这本书包含了55个有效的编程准则,旨在帮助程序员写出更高效、更易于理解和维护的代码。以下是其中一些...

    c++ effective和more effective c++

    3. "Effective_C++2e(中文).pdf":这同样是《Effective C++》第二版的中文版,与CHM格式互补,提供不同的阅读选择。 总的来说,《C++ Effective》和《More Effective C++》是C++程序员的必读之作,它们涵盖了C++...

    more effective c++ 电子书

    2. **异常处理**:异常安全编程是C++中的一个重要主题,书中的章节会指导如何在设计和实现中考虑异常安全,以防止异常传播导致的数据损坏。 3. **STL**:STL是C++的标准库之一,包含容器、迭代器、算法和函数对象等...

    effective c++和more effective c++

    《Effective C++》和《More Effective C++》是C++编程领域中的两部经典之作,由Scott Meyers撰写。这两本书深入浅出地探讨了如何更有效地利用C++语言特性,提升代码质量和效率,是每一位C++程序员必备的参考书籍。 ...

    Effective C++ More effective C++ 中文版 .chm .rar

    《Effective C++》和《More Effective C++》是两本非常经典的C++编程指南,由Scott Meyers撰写,旨在帮助开发者提升C++编程技巧和理解深度。这两本书中包含了一系列的编程实践和建议,旨在让程序员写出更高效、更...

    effective c++ & more effective c++ 纯文字版

    effective c++ & more effective c++ 纯文字版

    Effective_C++2e

    Effective_C++2eEffective_C++2eEffective_C++2eEffective_C++2eEffective_C++2eEffective_C++2eEffective_C++2e

    Effective C++ && More Effective C++(完整版)

    这是我辛苦找来的侯捷翻译的Effective C++ && More Effective C++(完整版),其中Effective C++ 包括中文第二版,中文第三版,还有英文第三版。我这还有pdf,但是大于15MB,传不上去,有需要的,可以像我要啊!

    Effective C++跟more Effective c++

    《Effective C++》和《More Effective C++》是两本由Scott Meyers撰写的经典C++编程指南,深受程序员喜爱。这两本书深入探讨了C++编程的最佳实践和常见陷阱,帮助开发者写出更高效、更安全的代码。以下是对这两本书...

    Effective C++ 中文带目录

    《Effective C++》第三版由Scott Meyers所著,是一本经典的C++编程书籍。本书不仅深入探讨了C++语言的高级特性,也提出了一系列编程实践中的最佳实践和技巧。侯捷老师翻译的中文版,使更多的中文读者能够学习和掌握...

    Effective C++ & More Effective C++.chm

    Effective C++ & More Effective C++.chm

    Effective C++中文版第三版 高清PDF带目录

    根据提供的标题、描述和标签,我们可以确定这与《Effective C++》这本书的相关资源有关。但是,在给定的部分内容中,并没有直接提及与本书的具体知识点,而是反复提到了一个名为“Linux公社”的网站及其涵盖的内容...

    Effective C++中文第3版.pdf 带目录书签 清晰版

    《Effective C++中文第3版》是一本由Scott Meyers所著的经典著作,该书深入浅出地介绍了C++编程语言的最佳实践与设计原则。它不仅适合初学者掌握C++的核心概念,也是资深程序员提高代码质量和性能的宝典。下面,我们...

Global site tag (gtag.js) - Google Analytics