上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 22 下一页
摘要: 1.类型识别 === 静态类型:变量(对象)自身的类型 动态类型:指针(引用)所指向的对象的实际类型 2.问题: void test(Base b) { / 危险的转换方式 如b正好指向子类,则没有问题。如果b正好指向父类,则此处则有风险 / Derived d = static_castb; } 阅读全文
posted @ 2019-12-13 16:27 人民广场的二道贩子 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1.catch语句中抛出异常 === eg: include include using namespace std; / 假设: 当前的函数式第三方库中的函数,因此,我们无法修改源代码 函数名: void func(int i) 抛出异常的类型: int 1 ==》 参数异常 2 ==》 运行异常 阅读全文
posted @ 2019-12-13 14:58 人民广场的二道贩子 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 1.c++异常处理 === c++内置了异常处理的语法: try...catch... try 语句处理正常代码逻辑 catch 语句处理异常情况 try 语句中的异常由对应的 catch 语句处理(注意一个try语句块只能捕获一个异常给catch) try { double r = divider 阅读全文
posted @ 2019-12-13 10:27 人民广场的二道贩子 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 1.异常与bug的区别 === 异常:是程序运行时可预料的执行分支 bug :是程序中的错误,是不被预期的运行方式 异常与bug的对比 异常: a.运行时产生除0的情况 b.需要打开的外部文件不存在 c.数组访问时越界 bug: a.使用野指针 b.对数组使用结束后未释放 c.选择排序无法处理长度为 阅读全文
posted @ 2019-12-12 11:00 人民广场的二道贩子 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 1.单例模式 === 概念:定义一个类,使得这个类最多只能创建一个对象。(单例对象在系统的生命周期中都是存在的,所以单例对象在整个系统的运行中不释放) 思路: a.将构造函数的访问属性设置为private b.定义instance并初始化为NULL c.当需要使用对象时,访问instance值 空值 阅读全文
posted @ 2019-12-12 10:50 人民广场的二道贩子 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 1.智能指针模板 === STL(头文件 memory )中的智能指针模板: auto_ptr a.生命周期结束时,销毁指向内存的空间 b.不能指向堆数组,只能指向堆对象(变量) c.一片堆空间只属于一个智能指针对象 d.多个智能指针对象不能指向同一片堆空间(当多个智能指针指向同一堆空间时, aut 阅读全文
posted @ 2019-12-10 16:46 人民广场的二道贩子 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 1.数组模板 === 模板参数可以是数值型参数(非类型参数) template void func() { T a[N]; // 使用模板参数定义局部数组 } 数值类型模板参数的限制 a. 变量 不能作为模板参数 b. 浮点数 不能作为模板参数 c. 类对象 不能作为模板参数 d.... 本质:模板 阅读全文
posted @ 2019-12-10 15:53 人民广场的二道贩子 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1.多参数类模板 === 类模板可以定义多个不同的类型参数 template class Test { public: void add(T1 a, T2 b); }; Test t; 2.类模板特化(即实现模板中的特殊情况) === a.类模板特化:指定类模板的特定实现 b.部分类型参数必须显示指 阅读全文
posted @ 2019-12-09 16:45 人民广场的二道贩子 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 1.c++中的类模板 === a.以相同的方式处理不同的类型 b.在类声明前使用template进行标识 c.用于说明类中使用的泛指类型T template class Operator { public: T op (T a, T b); }; 2.类模板的应用 === a. 只能显示指定具体类型 阅读全文
posted @ 2019-12-09 15:11 人民广场的二道贩子 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1.函数模板深入理解 === 编译器会对函数模板进行两次编译 对模板代码本身进行编译 对参数替换后的代码进行编译 注意事项: 函数模板本身不允许隐式类型转换 自动推导类型时,必须严格匹配 (类型必须严格匹配) 显示类型指定时,能够进行隐式类型转换 2.多参数函数模板 === 函数模板可以定义任意多个 阅读全文
posted @ 2019-12-09 10:26 人民广场的二道贩子 阅读(190) 评论(0) 推荐(0) 编辑
上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 22 下一页