- 2024-11-01侯捷C++学习笔记
classcomplex{public:complex(doubler=0,doublei=0) //构造函数complex,没有返回值:re(r),im(i) //初值列{} //(大气的写法)上面等同于complex(doubler=0,doublei=0){re=r;im=i;} complex&operator+=(constcomplex&);//passbyreference
- 2024-05-20侯捷C++上期笔记
1.头文件和类、构造函数c++和c最大的不同在于C++会把数据以及处理数据的函数放到一个对象objects(class)里,不同类之间不可见,类似C中结构体struct防止头文件重复声明ifndefcomplex//当之前没有声明过这个头文件时,才进行后续的声明definecomplex(2)补充定义(1)类定义(3)类功能解释
- 2024-01-30【侯捷C++面向对象笔记】补充5-new & delete重载
平时所使用的new和delete操作,称之为表达式,一般由好几个步骤组成。如上图所示,new表达式会被编译器转化为三个步骤。new表达式不能重载,但其中operatornew是可以重载的。➡️全局::operatornew的重载why不能放在namespace内?因为全局operatornew是放在defaultglobalnamespac
- 2024-01-30【侯捷C++面向对象笔记】补充2-pointer-like & function-like class
关键词:仿函数pointer-like:将一个类设计得像指针一样,通常通过重载*和->操作符实现。function-like:将类的成员设计得能像函数一样使用,通过重载()操作符实现。TipDemo应用:智能指针注意:->符号在作用一次后,会继续作用下去(不同于*号)Foof(*sp):f为一个Foo对象本体,使用时f.m
- 2024-01-30【侯捷C++面向对象笔记】补充3-template
关键词:类模板,函数模板,成员模板,模板特化“泛化”和“特化”TipDemo类模板定义时需要显式地指定类型名。函数模板定义时编译器自动进行实参推导类型(但不提供隐式转换)。成员模板:模板中还包含模板模板(全)特化格式:template<>尖括号内为空模板偏特化(partia
- 2024-01-30【侯捷C++面向对象笔记】补充4-object model
关键词:虚函数表,动态绑定,多态每个对象都维护自己的虚表指针,指向类的虚函数表。(所以对象的size比其包含的所有数据size多4,即虚指针大小)➡️动态绑定:(多态的实现原理)通过指针p找到对象c的vptr通过vptr找到classC的vtbl在vtbl中找到第n个虚函数并调用➡️子类调用父类函数隐
- 2024-01-30【侯捷C++面向对象笔记】String类
关键词:动态内存分配,拷贝赋值,new/delete与Complex类最大的差别:有动态分配的内存空间(char*m_data)TipDemo拷贝赋值函数的一般结构拷贝赋值时,检测自我赋值非常重要自己的内存已经释放了,还怎么把自己赋给自己?new时做了什么?1.分配内存2.static_cast为相应类型指针
- 2023-10-23[侯捷_C++面向对象高级开发_上] 2 头文件和类的声明
1.CvsC++关于数据和函数CDataFunctions对于C来说,数据大部分情况是所有函数都可以访问的,这样对程序来说会变得很混乱C++DataMembersMemberFunctions对于C++来说,数据和函数封装在一起形成类,可以设定为数据只能让类里的函数访问,具有良好的组织性2.C++关于数
- 2023-09-23c++总结
c++prime(常备字典)+c++手册+二十一天学通c++(这个很简单,看个人情况)黑马c++适合绝大多数人入门c++码农论坛更适合二刷,比较精简,讲的不错,但是涉及经验讲解过多,不一定适合新手侯捷以及cherno(这两个是巨佬)适合工作再看
- 2023-09-16《STL源码剖析》 - 侯捷 2002年
我们的第一个c++stlapplication。什么是容器?什么是迭代器?什么是算法?什么是分配器?什么是适配器?什么是仿函式?1.容器就是装数据的容器,等于是数据结构?不应该吧?数据结构不应该是自定义的吧?为什么说容器是数据结构搞不懂。2.分配器,用于给容器分配内存。3.迭代器,用于从容器中
- 2023-06-09侯捷C++(C++标准11-14)
第一讲语言 C++2.0新的标准库#include<iostream>usingnamespacestd;intmain(){cout<<__cplusplus<<endl;return0;}ViewCode确认支持C++11第二讲标准库
- 2023-06-08侯捷老师-内存管理和内存分配器
目录链接:https://www.youtube.com/watch?v=uQ3wKWGmtk0&list=PLRTJhCIMo8HPlzVfZ8uxs6SGSSAtKXQ6Q所有的内存分配最终都会调用mallocglibc就是直接用的DLMalloc调用层次:c++程序员=>标准库容器std::allocator=>标准c++的operatornew()=>CRT的malloc和free=>操作
- 2023-06-07侯捷C++STL源码分析
STL六大部件容器(Containers):放东西,需要占用内存。分配器(Allocators):支持容器。算法(Algorithms):操作容器里面的数据。迭代器(Iterators):容器和算法之间的桥梁,泛化的指针。适配器(Adapters)仿函数(Functors)#include<vector>#include<algorithm>#inclu
- 2023-04-22C语言和C++推荐书籍
《CPrimerPlus》(第六版)作者:StephenPrata《C和指针》(第二版)作者:KennethA.Reek《C语言程序设计》(第四版)作者:谭浩强《C++Primer》(第五版)作者:Lippman,Lajoie,andMoo《EffectiveC++》(第三版)作者:ScottMeyers《STL源码剖析》作者:侯捷《深入理解C++11:C++11新特性解析与
- 2023-03-02侯捷C++(续)
14.转换操作符转换函数operatorint()const;注意:1.必须是成员函数2.不能指定返回类型3.形参表必须是空的4.必须显式地返回一个指定类型的值5
- 2023-01-22侯捷 STL标准库和泛型编程 视频全集下载
关注公众号:红宸笑。回复:视频即可
- 2023-01-22侯捷 C++面向对象高级开发 上 && 下 视频全集下载
关注公众号:红宸笑。回复:视频即可
- 2023-01-22侯捷 C++新标准C++11&14 视频全集下载
关注公众号:红宸笑。回复:视频即可
- 2023-01-22侯捷 C++内存管理机制 视频全集下载
关注公众号:红宸笑。回复:视频即可
- 2022-08-31侯捷老师c++11重点
作者:还有offer嘛链接:https://www.nowcoder.com/discuss/962212?page=3来源:牛客网 •指针、引用、数组、内存•右值引用与完美转发•引用与指针区别•C和
- 2022-08-31侯捷 内存管理 笔记pdf
https://www.zhihu.com/people/xu-wei-duan-ke/posts <<侯捷C++内存管理第二讲笔记(二)-知乎.pdf>> <<侯捷C++内存管理第一讲笔记-知乎.pdf>>