上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 48 下一页
摘要: 为什么要在catch中重新抛出异常? 阅读全文
posted @ 2019-12-09 22:31 一代枭雄 阅读(336) 评论(0) 推荐(0)
摘要: C++内置了异常处理的语法元素try... catch ...-try语句处理正常代码逻辑-catch语句处理异常情况-try语句中的异常由对应的catch语句处理 C++通过throw语句抛出异常信息 C++异常处理分析-throw抛出的异常必须被catch处理 当前函数能够处理异常,程序继续往下 阅读全文
posted @ 2019-12-09 21:49 一代枭雄 阅读(334) 评论(0) 推荐(0)
摘要: 异常的概念-程序在运行过程中可能产生异常-异常(Exception)与Bug的区别 异常是程序运行时可预料的执行分支 Bug是程序中的错误,是不被预期的运行方式 异常(Exception)和Bug的对比-异常 运行时产生除0的情况 需要打开的外部文件不存在 数组访问时越界-Bug 使用野指针 堆数组 阅读全文
posted @ 2019-12-09 21:11 一代枭雄 阅读(554) 评论(0) 推荐(0)
摘要: 单例模式需求的提出在架构设计时,某些类在整个系统生命周期中最多只能有一个对象存在(Single Instance)如何定义一个类,使得这个类最多只能创建一个对象?明确创建一个对象,必然会调用构造函数。要控制类的对象数目,必须对外隐藏构造函数 思路:-将构造函数的访问属性设置为private-定义in 阅读全文
posted @ 2019-12-08 22:37 一代枭雄 阅读(1119) 评论(0) 推荐(0)
摘要: 小结:智能指针是C++中自动内存管理的主要手段智能指针在各种平台上都有不同的表现形式智能指针能够尽可能的避开内存相关的问题STL和Qt中都提供了对智能指针的支持 阅读全文
posted @ 2019-12-08 21:44 一代枭雄 阅读(386) 评论(0) 推荐(0)
摘要: Qt中的智能指针-QPointer .当其指向的对象被销毁时,它会被自动置空 .析构时不会自动销毁所指向的对象-QSharedPointer .引用计数型智能指针 .可以被自由的拷贝和赋值 .当引用计数为0时才删除指向的对象 析构函数没有被调用,意味着pt这个智能指针对象,它在生命周期结束时并没有同 阅读全文
posted @ 2019-12-08 21:33 一代枭雄 阅读(692) 评论(0) 推荐(0)
摘要: 智能指针类模板智能指针本质上就是一个对象,它可以像原生指针那样来使用。 智能指针的意义-现代C++开发库中最重要的类模板之一-C++中自动内存管理的主要手段-能够在很大程度上避开内存相关的问题 1.内存泄露,在测试阶段很难发现。造成的原因就是申请堆空间中的内存,忘记释放。 2.多次指针释放:一个指针 阅读全文
posted @ 2019-12-08 20:15 一代枭雄 阅读(293) 评论(0) 推荐(0)
摘要: 优化之前的IntArray类 小结:模板参数可以是数值型参数数值型模板参数必须在编译期间唯一确定数组类模板是基于数值型模板参数实现的数组类模板是简易的线性表数据结构 阅读全文
posted @ 2019-12-06 23:32 一代枭雄 阅读(560) 评论(0) 推荐(0)
摘要: 预备知识模板参数可以是数值型参数(非类型参数)template<typename T, int N>void func(){ T a[N]; //使用模板参数定义局部数组}func<double, 10>(); 数值型模板参数的限制-变量不能作为模板参数(变量是不能在编译期就唯一确定的)-浮点数不能 阅读全文
posted @ 2019-12-06 23:06 一代枭雄 阅读(407) 评论(0) 推荐(0)
摘要: 多参数类模板类模板可以定义任意多个不同的类型参数template <typename T1, typename T2>class Test{public: void add(T1 a, T2 b);}; 使用上述的类模板: Test<int ,float> t; 类模板可以被特化:即特殊化-指定类模 阅读全文
posted @ 2019-12-05 23:28 一代枭雄 阅读(284) 评论(0) 推荐(0)
上一页 1 ··· 30 31 32 33 34 35 36 37 38 ··· 48 下一页