文章 2024-06-14 来自:开发者社区

《Effective C++ 改善程序与设计的55个具体做法》 第二章 构造/析构/赋值运算 笔记

2.构造/析构/赋值运算 Constructor,Destructors, and Assignment Operator 条款05:了解C++默默编写并调用哪些函数 Know what functions C++ sliently writes and calls “编译器可以暗自为class创建default构造函数、copy构造函数、co...

文章 2024-06-14 来自:开发者社区

《Effective C++ 改善程序与设计的55个具体做法》 第一章 笔记

1 让自己习惯C++ 条款01:视C++为一个语言联邦        View C++ as a federation of languages. “C++的语法多样复杂,简单来看,可以把它看成4种语言(C、面向对象、Tempate(模板)、STL(标准库)。” C。 C是C++的基础,C++...

文章 2024-02-19 来自:开发者社区

C++ Effective Modern Pointer (智能指针模块)

在C++中,有三种主要的智能指针类型: std::shared_ptr<T>:(在这里T是类模板)共享指针是一种引用计数型的智能指针。多个shared_ptr对象可以共享同一个堆上的对象,并且当最后一个引用被销毁时,会自动释放相关资源。 std::unique_ptr<T>:唯一指针是一种独占所有权型的智能指针。每个unique_ptr对象拥...

文章 2024-01-08 来自:开发者社区

Effective C++55 笔记

1.对于单纯常量 , 最好以const对象或enum替换#define 。对于形似函数的宏(macros),最好用inline函数替换#define。2. 尽可能使用const &nbsp; &nbsp;当进行操作符重载时,返回const对象可以预防那个"没意思的赋值操作". &nbsp; &nbsp;将某些东西生命为const可以帮助编译器侦测出错误用法,const可被施加于任何作用域内的对象....

文章 2023-10-13 来自:开发者社区

C++:构造/析构/赋值运算(Effective C++)

写在前面这是对Effective C++这本书中的部分内容进行的总结以及代码实践,主要是记录一些对我印象深刻的,确实能改善程序的内容,和有需要实践验证加深印象的一部分实践和我自己的理解05:了解C++默默编写并调用哪些函数当我们创建了一个类后,即使这个类中并没有写任何成员函数,但是编译器依旧会为我们生成六个成员函数,也叫做六大默认成员函数这六个成员函数分别为:构造函数:用来完成初始化析构函数:用....

文章 2023-10-13 来自:开发者社区

C++:让自己习惯C++(Effective C++)

写在前面这是对Effective C++这本书中的部分内容进行的总结以及代码实践,主要是记录一些对我印象深刻的,确实能改善程序的内容,和有需要实践验证加深印象的一部分实践和我自己的理解01:视C++为一个语言联邦C++发展许久一直到今天,已经是一个很丰富并且很成熟的语言,有很多冒险大胆的做法,要把C++看成一个联邦而不是单独的一个语言,联邦可以由很多部分组成,例如在C++中有CObject-Or....

文章 2023-06-20 来自:开发者社区

【Effective C++详细总结】第四章 设计与声明

四、设计与声明条款18:让接口容易被正确使用,不易被误用1、保证参数一致性:如果直接传入三个 int 值的参数代表年月日,那么很有可能会因为将其中传入参数位置写反从而发生不可预料的错误。因此,我们可以通过将年月日设计成类,将类作为参数传入就能让编译器帮我们检错是否写反。更进一步的可以在年月日类中再细分采用静态函数,进一步保证可靠性。2、保证接口行为一致性:内置数据类型(ints, double…....

【Effective C++详细总结】第四章 设计与声明
文章 2023-06-20 来自:开发者社区

【Effective C++详细总结】第三章 资源管理

三、资源管理条款13:以对象管理资源本条款已经过时,现代 C++ 可以通过智能指针自动释放申请的资源。所谓资源,就是不再使用它时,将其还给系统。周所周知,堆区开辟的数据需要程序员手动释放,否则会在程序结束的时候由系统释放。在此前提下,我们来看一段代码:class employee{...}; void func() { employee* emp = new employee();//动...

【Effective C++详细总结】第三章 资源管理
文章 2023-06-20 来自:开发者社区

【Effective C++详细总结】第二章 构造/析构/赋值运算

二、构造/析构/赋值运算条款05:了解 C++ 默默编写并调用了哪些函数在创建类时,如果自己不定义默认构造,拷贝构造(拷贝运算符),析构函数,那么编译器会自动生成这些函数。//拷贝运算符: classname& operator=(const classname& cn){......}但是有些情况下编译器不会自动生成,拿下面这段代码举例:可以发现由于 class 里出现了引用类....

【Effective C++详细总结】第二章 构造/析构/赋值运算
文章 2023-06-20 来自:开发者社区

【Effective C++详细总结】第一章 让自己习惯C++

一、让自己习惯C++条款01:视 C++ 为一个语言联邦C++由几个重要的次语言构成C语言: 区块,语句,预处理器,数组,指针等等。类: class,封装,继承,多态…(动态绑定等等)模板: 涉及泛型编程,内置数种可供套用的函数或者类。STL: STL是个模板库,主要涉及容器,算法和迭代器在不同情况下使用适合的部分,可以使 C++ 实现高效编程条款02:尽量以 const enum inline....

【Effective C++详细总结】第一章 让自己习惯C++

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注