Effective C++读书笔记博客汇总
发表于|更新于|从零开始的C++の学习之路
|总字数:166|阅读时长:1分钟|浏览量:
Effective C++读书笔记博客汇总
这是csdn链接,大家感兴趣可以去看看
Effective C++ | 读书笔记 (一)-CSDN博客
Effective C++ | 读书笔记 (二)-CSDN博客
Effective C++ | 读书笔记 (三)-CSDN博客
Effective C++ | 读书笔记 (四)-CSDN博客
个人阅读感受:
我是第一次读到一半就没读了,觉得看不懂,读起来也比较枯燥
做过两个项目以后,第二次读才写的博客,有一些地方确实在项目中会运用到,但其他的还是有不少不太理解的,之后再做做别的项目进行第三次阅读之后再进行补充
文章作者: Darling
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Darlingの妙妙屋!
相关推荐

2024-10-28
Effective C++ 读书笔记
Effective C++ 读书笔记1、让自己习惯C++条款 01 :视C++为一个语言联邦C++的四个层次: C:C++是在C语言的基础上发展而来的 Object-Oriented C++:这是C++中不同于C的部分,这里主要指面向对象。 Template C++:C++中的泛型编程。 STL:这是一个标准模板库,它用模板实现了很多容器、迭代器和算法,使用STL往往事半功倍。 条款 02: 尽量const、enum、inline替换#define const好处 define直接常量替换,出现编译错误不易定位(不知道常量是哪个变量) define没有作用域,const有作用域提供了封装性 enum好处: 提供了封装性 编译器肯定不会分配额外内存空间(其实const也不会) inline的好处: define宏函数容易造成误用(下面有个例子) 1234567//define误用举例#define MAX(a, b) a > b ? a : bint a = 5, b = 0;MAX(++a, b) //a++调用2次MAX(++a, b+10)...

2024-10-24
侯捷内存管理学习笔记 | C++
侯捷内存管理学习笔记第一章节 primitives零.new和delete概述C++中的new和delete是用于动态内存分配和释放的操作符,它们的底层机制和工作原理相对复杂,但也可以简单清晰地解释。 new的底层机制和工作原理 内存分配: 当使用new操作符时,它首先会调用底层的内存分配函数(如operator new),这个函数通常是对malloc的封装。malloc会从堆中分配足够的内存空间。 如果内存分配失败,operator...

2024-10-20
侯捷 C++ STL标准库和泛型编程 | 学习笔记
侯捷 C++ STL标准库和泛型编程 | 学习笔记1 STL概述STL —— Standard Template Library,标准模板库 C++ Standard LIbrary,C++标准库中包含STL(即STL+一些小东西) 1.1 头文件名称 C++标准库的 header files 不带 .h,例如:#include<vector> 新式 C header files 不带 .h,例如:#include<cstdio> 老式 C header files 带 .h 仍然可用,例如:#include<stdio.h> 新式 header 内的组件封装于 namespace std 老式 header 内的组件不封装于 namespace std 1.2...

2024-10-16
施磊C++ | 进阶学习笔记
施磊C++ | 进阶学习笔记一、对象的应用优化、右值引用的优化1.1 构造,拷贝,赋值,析构中的优化1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253#include<iostream>using namespace std;class test{public: test(int a = 10) :ma(a) { cout << "test(int)" << endl; } ~test() { cout << "~test" << endl; } test(const test& t) :ma(t.ma) { cout << "test(const &)" << endl; } test&...

2024-10-10
侯捷 C++11 新特性 学习笔记
C++11 新特性 学习笔记1.Variadic TemplatesC++11支持函数模板的默认模板参数在 C++98/03 标准中,类模板可以有默认的模板参数,如下: 12345template <typename T, typename U = int, U N = 0>struct Foo{ // ...}; 但是却不支持函数的默认模板参数: 12345template <typename T = int> // error in C++98/03: default template argumentsvoid func(){ // ...} 现在这一限制在 C++11 中被解除了。上面的 func 函数在 C++11 中可以直接使用,代码如下: 12345int main(void){ func(); //T = int return 0;} 此时模板参数 T 的类型就为默认值...

2023-07-22
黑马程序员C++提高编程
黑马程序员C++提高编程 提高阶段主要针对泛型编程和STL技术 一、模板 模板就是建立通用的模具,大大提高复用性,也是泛型编程的思想。C++提供两种模板机制:①函数模板 ②类模板 🔴注意: ① 模板不是万能的。 ② 模板不能直接使用。 1.1 函数模板1.1.1 函数模板基础知识 语法: 12template <typename T > 函数声明或定义 解释:template— 声明创建模板;typename — 可以用class代替;T — 通用的数据类型 使用:①自动类型推导 ②显示指定类型 🟦意义:提高复用性,将类型参数化。 1234567891011121314151617//函数模板的使用template<typename T>void MySwap(T& a, T& b){ T temp = a; a = b; b = temp;}int main(){ int a = 10; int b = 20; MySwap(a,...
评论
公告
上学的第一天就在为高考做准备,谈恋爱的第一天就在为结婚做准备,工作的第一天就在为买房做准备。如果任何一个环节出了问题,结论就是“这么多年书白读了”“白白在一个人身上浪费青春”“工作了这么多年有什么用”。 ————功利主义导向的思考方式往往使我们忘却了生命的本质是一场历程。