随笔分类 - [1] C&Cpp
摘要:关键字 noexcept 用于指出函数不会引发异常,它也可用作运算符,判断操作数(表达式)是否可能引异常: 如果操作数可能引发异常,则返回 false,否则返回tue。 例如,请看下面的声明: int hilt(int); int hilt(int) noexcept; 表达式 noexcept(h
阅读全文
摘要:参考:C++.Primer.Plus(第6版)中文版].(美)普拉达 P856 按位运算符 & 与 (电路里的串联) 1&1=1 其他都是0 1&0=0 0&1=0 0&0=0 | 或 (电路里的并联) 0|0=0 其他都是1 1|0=1 0|1=1 1|1=1 ~ 非 取反 ~1 = 0 ; ~0
阅读全文
摘要:注意:C++11后的std::swap模板函数,使用了移动构造函数和移动赋值函数。所以。对于pimpl手法的内置类型,有移动构造函数和移动赋值函数应该不用写std::swap的特化,当然写了更好。 // TEMPLATE FUNCTION swap template<class _Ty, size_
阅读全文
摘要:#include <iostream> using std::cout; // 函数 面向过程编程 int add1(int a, int b){ return a + b; } // 对象 面向对象编程 class Add{ public: int operator() (int a, int b
阅读全文
摘要:条款21:必须返回对象时,别妄想返回其reference ***
阅读全文
摘要:***
阅读全文
摘要:条款18:让接口容易被正确使用,不易被误用 ***
阅读全文
摘要:第13章 运行时类型信息 《C++大学教程(第3版)》是2005年清华大学出版社出版的图书,作者是那格勒,译者是侯普秀。ISBN 9787302098492 13.1 概述 运行时类型信息(run time type information,RTTI)是一种机制,采用该机制可以在执行时确定对象类型而
阅读全文
摘要:参考:C++ Primer Plus 中文版 第六版 很多STL算法都使用函数对象—也叫函数符(functor)。函数符是可以以函数方式与()结合使用的任意对象。这包括函数名、指向函数的指针和重载了()运算符的类对象(即定义了函数 operator())的类) 例如,可以像这样定义一个类: 函数符的
阅读全文
摘要:《C++大学教程(第3版)》是2005年清华大学出版社出版的图书,作者是那格勒,译者是侯普秀。ISBN 9787302098492 这是我入门C++的第一本书,是在学校图书馆看见的,后买了一本。 第10章 函数重载 函数重载:就是在同一作用域内以相同的名称声明的多个函数。用函数的形参列表和参数个数、
阅读全文
摘要:用Rapid Json 参考:http://rapidjson.org/zh-cn/ RapidJSON是腾讯开源的一个高效的C++ JSON解析器及生成器,它是只有头文件的C++库。RapidJSON是跨平台的,支持Windows, Linux, Mac OS X及iOS, Android。 库:
阅读全文
摘要:比较稳妥的赋值构造函数 Widget& operator=(const Widget& rhs) { // 证同测试 if (this == &rhs) return *this; //先记住原来的,再用new分配内存,再delete释放内存。以防止new异常导致已经delete了 WidgetIm
阅读全文
摘要:
阅读全文