上一页 1 2 3 4 5 6 7 ··· 15 下一页
摘要: 迭代器:面向对象版本的指针, 提供了访问容器和序列中每一个元素的方法 用途:STL算法利用迭代器对存储在容器中的元素序列进行遍历 迭代器和指针的关系:1 指针是一种迭代器, 但迭代器不仅仅是指针.2 指针可以指向内存中的一个地址, 然后通过这个地址访问相应的内存单元. 而迭代器更为抽象, 它可以指向 阅读全文
posted @ 2020-09-04 15:19 DNoSay 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 类模板的默认参数: 包含和通用类型相关的默认参数, 当类模板被实例化时, 如果没有指定其他类型的参数, 则使用默认参数,函数类型参数也可以给定默认值 定义默认参数语法:<typename T,.., int|&|* t,.., typename V = defaultType,..., int|&| 阅读全文
posted @ 2020-09-03 08:26 DNoSay 阅读(2046) 评论(0) 推荐(0) 编辑
摘要: 函数类型参数: 在类模板的模板参数表中必须至少有一个类参数, 还可以有非类参数的参数, 非类参数的参数被称为函数类型参数,又称为无类型模板参数, 采用语法和普通函数参数一样, 只包含参数类型和参数名. 但是只限于整型, 指针型和引用. 传递给函数类型参数的实参要么是整型常量, 要么是指向全局函数或对 阅读全文
posted @ 2020-09-03 08:04 DNoSay 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 函数模板及其重载函数根据类型匹配顺序1 首先寻找和使用最符合函数名和参数类型的特定模板函数, 找到则调用2 其次寻找一个函数模板, 将其实例化产生一个匹配的模板函数, 找到则调用3 再其次寻找可以通过类型转换进行参数匹配的函数模板实例化产生的一个匹配的模板函数, 找到则调用4 找不到, 编译报错 代 阅读全文
posted @ 2020-09-02 19:00 DNoSay 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 函数模板存在的缺陷1 可以支持隐式转换, 但调用优先级低2 对于特定的数据类型的处理需要定义特殊的普通重载函数以保证功能的正确实现 代码示例: #include <iostream> using namespace std; /* 函数模板存在的缺陷 1 可以支持隐式转换, 但调用优先级低 2 对于 阅读全文
posted @ 2020-09-02 18:31 DNoSay 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 强类型语言的特点:1 程序可靠性较高:在编译运行前必须经过严格的类型检查, 达到在运行前就检查出类型不兼容的错误.2 灵活性较低: 对于默写处理逻辑完全一样, 但是数据类型不同的变量的操作必须按照类型分别定义. 解决强类型的严格性和灵活性的冲突的途径:1 使用宏函数: 方便, 但是可能不带来其他安全 阅读全文
posted @ 2020-09-02 16:01 DNoSay 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 强类型语言的特点:1 程序可靠性较高:在编译运行前必须经过严格的类型检查, 达到在运行前就检查出类型不兼容的错误.2 灵活性较低: 对于默写处理逻辑完全一样, 但是数据类型不同的变量的操作必须按照类型分别定义. 解决强类型的严格性和灵活性的冲突的途径:1 使用宏函数: 方便, 但是可能不带来其他安全 阅读全文
posted @ 2020-09-02 15:16 DNoSay 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 虚析构函数: 使用virtual关键字修饰的析构函数 C++不支持虚构造函数, 但支持虚析构函数, 由于析构函数没有参数, 一个类只能有一个虚析构函数 虚析构函数的必要性: 使用基类的引用或者指向基类类型的指针调用析构函数完成派生类对象的析构(delete操作符自动调用对象的析构函数) 代码示例: 阅读全文
posted @ 2020-09-01 18:16 DNoSay 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 纯虚函数: 不能在基类中给出实现, 但是要求所有派生类必须覆盖(重写)或也声明为纯虚函数的虚函数函数作用: 给所有派生类提供一个操作接口定义纯虚函数的语法:virtual 返回值类型 函数名(<参数列表>) = 0{ <函数体>} 调用抽象类的纯虚函数需要使用完全限定函数名(带作用域分辨符) 抽象类 阅读全文
posted @ 2020-09-01 17:36 DNoSay 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 析构函数中虚函数的调用采用静态联编即构造函数和析构函数调用自己类中定义的虚函数, 而不会调用派生类中声明的虚函数即 代码示例: #include <iostream>using namespace std; /*析构函数中虚函数的调用采用静态联编即构造函数和析构函数调用自己类中定义的虚函数, 而不会 阅读全文
posted @ 2020-09-01 16:39 DNoSay 阅读(162) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 15 下一页