C++
文章平均质量分 75
Mark_404
自由、博爱、专一
展开
-
OOP
OOPInheritance(继承)概念继承涉及两种角色:基类、派生类。基类处在继承树的顶端,负责定义在这个继承树当中所有角色的共同拥有的成员或者成员函数,而派生类负责根据各自的需要定义属于自己的成员或者成员函数。如果派生类需要访问基类的成员变量,而基类变量又无法设置成public(这样太危险),因此protected就出现了。将变量设置成protected类型就可以让派生类访问。如果派生类普遍需要实现的函数,但各自实现方式不同,此时基类给各个派生类提供虚函数进行继承,例如人类是一个基类,而亚洲人原创 2021-04-20 21:44:44 · 63 阅读 · 0 评论 -
C++ 补充知识
C++ 补充知识staticclass complex{ private: string name; int age; static int index; public: complex(); complex(complex &comp); static SetIndex(const int &x){index=x};}int complex::index=1; //*...... int main(原创 2021-04-18 20:44:41 · 62 阅读 · 0 评论 -
复习String 类的实现过程
复习String 类的实现过程String 类的声明class String{ private: char* m_data; //为了能够动态容纳字符大小,我们设置成字符指针 public: //构造函数 String(const char* cstr=0); //有默认值的参数,防止传入的参数为空使得指针指向为空 //由于class 中含有指针变量,因此我们在设计三个(拷贝构造、拷贝赋值、析构函数)重要、特殊的函数时要注意 inline S原创 2021-04-17 22:05:06 · 74 阅读 · 0 评论 -
C++ 堆、栈与内存管理
C++ 堆、栈与内存管理注:所有内容来自于侯捷老师的教学视频文章目录C++ 堆、栈与内存管理摘要正文1. 内存泄露2. new对象的过程3. delete对象的过程4. 动态分配的内存分布4.1 new一个对象时4.2 当new一个对象数组时摘要在C++函数体中,与C函数一样系统都会分配堆与栈给函数体.Stack:每个函数体的stack负责存储函数体所接受的参数以及返回地址,同时函数体内部以非new方式定义的对象也存储在stack当中。Heap:操作系统分配给函数体一块global内存空间,原创 2021-04-14 22:15:56 · 126 阅读 · 0 评论 -
C++基础
C++基本知识文章目录C++基本知识@[toc]1. 声明文件与定义文件编写规范2. 构造函数编写规范2.1 初始化问题2.2 Default value3. 参数传递与返回值3.1 非写入函数const必要性分析3.2 参数传递3.3 返回值传递3.4 友元函数4. 成员变量与成员函数4.1 成员变量存在的空间4.2 成员函数4.3 成员变量的初始化5. 动态内存分配:new、delete5.1 new申请空间并返回空间地址5.2 delete6. 访问限制6.1 public6.2 private6原创 2021-04-14 16:03:25 · 259 阅读 · 0 评论 -
Template
Template文章目录Template思想概念区分分类思想模板是C++实现代码重用的一种重要的手段,是泛型编程的基础,模板的作用是将变量类型参数化,对具有相同逻辑结构的算法进一步抽象。模板在C++中主要分为两类:类模板、函数模板。概念区分函数模板与模板函数函数模板是用来产生函数的模板,例如:template <Typename T1,Typename T2,....>T & function(T& a,T& b){}模板函数是使用函数模板产生原创 2021-03-13 13:36:42 · 99 阅读 · 0 评论 -
C++基础
C++基本知识文章目录C++基本知识@[toc]1. 声明文件与定义文件编写规范2. 构造函数编写规范2.1 初始化问题2.2 Default value3. 参数传递与返回值3.1 非写入函数const必要性分析3.2 参数传递3.3 返回值传递3.4 友元函数4. 成员变量与成员函数4.1 成员变量存在的空间4.2 成员函数4.3 成员变量的初始化5. 动态内存分配:new、delete5.1 new申请空间并返回空间地址5.2 delete6. 访问限制6.1 public6.2 private6原创 2021-03-03 20:43:47 · 251 阅读 · 2 评论