摘要:
类模板 定义 所谓类模板,实际是建立一个通用类,其数据成员,成员函数的返回类型和形参类型不具体指定,用一个虚拟的类型来代表。使用类模板定义对象时,系统会根据实参的类型来取代类模板中虚拟类型从而实现了不同类的功能 定义一个类模板与定义函数模板的格式类似,必须以关键字template开始,其定义的一般格 阅读全文
摘要:
函数模板 泛型编程主要利用的技术就是模板 C++提供两种模板机制:函数模板和类模板 1.2.1 函数模板语法 函数模板作用: 建立一个通用函数,其函数返回值类型和形参类型可以不具体指定,用一个虚拟的类型来代表 语法: 1 template<typename T> 2 函数声明或定义 template 阅读全文
摘要:
OOP和GP区别 OOP将datas和methods关联在一起,而GP却是将两者分开,也就是容器自己搞自己的, 算法自己搞自己的, 然后两者通过迭代器(Iterator)联系起来。Algorithms通过Iterators确定操作范围,并通过Iterators取用Container元素。 p1 p2 阅读全文
摘要:
虚函数 在类的定义中,前面有virtual 关键字的成员函数就是虚函数 注:派生类中的成员函数 与 基类中虚函数同名且参数相同的函数,不加virtual也会自动变成虚函数 纯虚函数与抽象类 没有函数体的虚函数叫做纯虚函数,包含纯虚函数的类叫抽象类。 例如上面Base中的Examp就是一个纯虚函数,因 阅读全文
摘要:
1. const_cast const_cast是C++中的一个类型转换运算符,用于移除对象的常量性(const)或易变性(volatile)。它可以用于修改指针或引用的常量属性,但必须小心使用,因为修改常量对象的值可能导致未定义的行为。 const_cast的语法如下: const_cast<ne 阅读全文
摘要:
2.4 初始化和const const对象一旦创建后其值就不能再改变,所以const对象必须初始化,并且可以是任意复杂表达式。 如果利用一个对象去初始化另一个对象,则它们是不是const都无关紧要,例如: int i = 42; const int ci = i; //正确:i的值被赋给了ci in 阅读全文
摘要:
一.引用和指针 指针就是内存地址,指针变量是用来存放内存地址的变量。不同类型的指针变量所占用的存储大小都是相同的(32位 -- 4个字节;64位 -- 8个字节)。 引用不是新定义一个变量,而是给已存在变量取一个别名,编译器不会为引用变量开辟内存空间,它和引用对象公用一块内存空间。并且引用类型和引用 阅读全文