C++
文章平均质量分 56
C++知识点总结归纳
瀚海星云plus
这个作者很懒,什么都没留下…
展开
-
详解C++虚函数原理
1、虚函数虚函数是类中比较特殊的成员函数,通过在普通成员函数的前面加上“virtual”关键字声明。因为基类指针不能访问派生类的普通成员函数,但是可以访问派生类的虚函数,所以虚函数是实现C++多态性的关键。派生类继承了基类的虚函数并重新定义(重写、覆盖)虚函数,通过基类指针去指向其派生类对象,进行动态绑定(延迟绑定),达到利用基类访问派生类虚函数的目的。如果没有虚函数,则总被限制在基类函数本身,无法调用派生类中被重写的函数。2、虚函数实现原理虚函数表虚函数表指针类对象在内存中的布原创 2021-11-03 21:20:36 · 2018 阅读 · 0 评论 -
C++ 内存对齐
1、为什么需要内存对齐内存对齐是编译器对数据在内存放置位置的优化处理,在C++中,能够指定内存中对象位置的对齐方式,以尽可能地利用特定硬件结构的优势。一方面减少了对象所占用的内存大小,CPU也能更快地访问这些数据,另一方面考虑了不同平台的兼容性,原因如下:对于内存中的某些数据变量,如果这些变量存放位置没有对齐,那么CPU读取一个数据需要两个指令周期,而内存对齐后只需要一个,从而提高了数据访问速率。 c++程序可以部署在许多不同的平台中,每个平台的CPU对内存数据读取的方式都不同,有些特殊变量在不同原创 2021-10-30 13:24:04 · 348 阅读 · 0 评论 -
对C++ 深拷贝与浅拷贝理解
对象需要调用类的构造函数来生成,C++的类有两种默认构造函数,一种是普通的构造函数,“new”一个对象时会调用,另一种是拷贝构造函数,在一个对象赋给另一个同类型对象时调用。后者又分为深拷贝和浅拷贝,如果没有自己定义拷贝构造函数,则默认是浅拷贝。要理解什么是深拷贝和浅拷贝,假设有如下这样一个类定义class Person{ private: int age; char* name; public: Person(int age_, const char* nam原创 2021-10-28 23:36:55 · 93 阅读 · 0 评论 -
C++类的静态成员
在C++中,类及其对象在不同的内存块,类内存块中的数据对其所有对象共享,具有全局/静态属性,而每个对象都有自己独有的一块内存块,不与其他对象共享数据。静态成员属于类,分为静态成员变量和静态成员函数,可以在普通成员变量和成员函数声明的前面加上“static"关键字修饰class A{public: int x; // 普通成员变量 static int y; // 静态成员变量 static const int z = 0; // 常量型静态成员变量 i原创 2021-10-28 00:30:26 · 86 阅读 · 0 评论