C++学习
IT_Milo
这个作者很懒,什么都没留下…
展开
-
C++基础(一)
c++面向对象模型 c++类对象中的成员变量和成员函数是分开存储的,c语言中的内存4G模型仍然有效! c++中类的普通成员函数都隐式包含一个指向当前对象的this指针。 静态成员函数、成员变量属于类 静态成员函数与普通成员函数的区别: 静态成员函数不包含指向具体对象的指针。 普通成员函数包含一个指向具体对象的指针。 c++编译器处理面向对象: 普通成员变量:存储于对象中,与struct变量有...原创 2018-11-23 15:00:23 · 123 阅读 · 0 评论 -
C++基础(二)
继承 面向对象程序设计有4个主要特点:抽象、封装、继承、多态性。 继承是类之间定义的一种重要关系 一个B类继承A类,或称A派生类B 类A称为基类(父类),类B称为派生类(子类) A <-- B 派生类的定义: 类继承关系的语法形式 class 派生类名:基类名 { 数据成员和成员函数声明 }; 基类名表 构成 访问控制 基类名, 访问控制 基类名, … 访问控制表示派生类对基类的...原创 2018-11-26 09:34:06 · 134 阅读 · 0 评论 -
C++基础(三)
多态原理 理论知识: 当类中声明虚函数时,编译器会在类中生成一个虚函数表 虚函数表是一个存储类成员函数指针的数据结构 虚函数表是由编译器自动生成与维护的 virtual成员函数会被编译器放入虚函数表中 当存在虚函数时每个对象中都有一个指向虚函数表的指针(C++编译器给父类对象、子类对象提前布局vptr指针;当进行howToPrint(Parent *base)函数是,C++编译器不需要区分子类对...原创 2018-11-26 14:54:24 · 193 阅读 · 0 评论 -
C++进阶(一)
函数模版(泛型编程) 为什么要有函数模版? 函数模版本质: 类型参数化 函数模版定义形式: template <类型形式参数表> 类型形式参数形式为: typename T1, typename T2, … 或 class T1, class T2, … 函数模版声明: template <类型形式参数表> 类型 函数名(形式参数表) { 语句序列 } 函数...原创 2018-11-26 17:21:49 · 202 阅读 · 0 评论 -
C++类型转换专题
C++类型转换 类型转换名称和语法 c风格的强制类型转换:TYPE b = (TYPE)a c++风格的类型转化: static_cast 静态类型转换,编译的时C++编译器会做类型检查。如:int转换成char reinterpreter_cast 重新解释类型,强制类型转换 dynamic_cast 命名上理解是冬天类型转换,如子类和父类之间的多天类型转换 const_cast ...原创 2018-11-30 12:16:40 · 168 阅读 · 0 评论 -
C++进阶(二)
类模版(泛型编程) 为什么需要类模版? 类模版由模版说明和类说明构成 template <类型形式参数表> 类声明 例如: template< typename Type> class TClass { // TClass 的成员函数 private: Type DateMember; }; 类模版使用实现类所需要数据的类型参数化 类模版在表示如数组...原创 2018-11-27 14:36:12 · 188 阅读 · 0 评论