摘要: 的主要缺点 1、类型不明确 1. 首先,无法指定数据类型,导致我们无法明确枚举类型所占的内存大小。这种麻烦在结构体当中尤为突出,特别是当我们需要内存对齐和填充处理的时候。 此时我们的解决办法还是:不使用enum 2. 其次,当我们使用 时,我们无法决定编译器底层是如何对待 的(比如: 和`unsig 阅读全文
posted @ 2020-02-22 22:37 hellozhangjz 阅读(829) 评论(0) 推荐(0)
摘要: -E 预处理,将头文件展开,替换#define,删掉注释。 -C 阻止预处理器删除注释。 -S 生成汇编后的文件, -fverbose-asm circle.c 将变量名作为注释。 -c 生成目标文件,还差一步链接,重定位:将符号换为地址。 -o 指定输出文件的文件名 -I目录 附加的头文件搜索路径 阅读全文
posted @ 2020-02-22 22:36 hellozhangjz 阅读(167) 评论(0) 推荐(0)
摘要: 一、命名空间的使用 不再赘述。 二、在子类中改变基类成员的访问权限 可以将 和`protected public protected private using private private`成员。 这一切都会非常的自然。 参考: https://zhuanlan.zhihu.com/p/2126 阅读全文
posted @ 2020-02-22 22:35 hellozhangjz 阅读(536) 评论(0) 推荐(0)
摘要: 1、用const修饰函数的参数 参数是值传递 由于函数将自动产生临时变量复制该参数,该参数无需保护,没必要用const 参数是指针传递或者引用传递 const修饰的指针或引用所指向的值不可变。如果该参数只是起“被读取”的作用,最好用const修饰保护。 对于复合数据类型,最好使用引用传递,因为值传递 阅读全文
posted @ 2020-02-22 22:34 hellozhangjz 阅读(1245) 评论(0) 推荐(0)
摘要: 匿名函数 声明格式 [capture list] (params list) mutable exception ->return type {function body } capture list 捕获外部变量列表,在Lambda表达式的可见范围内的可见外部变量,如果Lambda函数想要访问他, 阅读全文
posted @ 2020-02-22 22:32 hellozhangjz 阅读(196) 评论(0) 推荐(0)
摘要: "原文地址" 什么是 CMake All problems in computer science can be solved by another level of indirection. David Wheeler 你或许听过好几种 Make 工具,例如 "GNU Make" ,QT 的 "q 阅读全文
posted @ 2020-02-22 22:28 hellozhangjz 阅读(547) 评论(0) 推荐(0)
摘要: 关于进制 二进制写起来太罗嗦,于是发明了8进制和16进制,好比是正楷和草书的关系。 关于补码 已有加法器,补码的发明是为了解决减法的问题,将减法转换为加法 1. 将两个加数转换为补码(正数不变,负数取反加1,取反和加1电路都可以实现) 2. 两数相加 (加法可以实现) 3. 结果转换为补码 原生字符 阅读全文
posted @ 2020-02-22 22:26 hellozhangjz 阅读(132) 评论(0) 推荐(0)
摘要: 友元函数和友元类在其内部对这个类的访问权限等于这个类的成员的访问权限。 友元函数 声明: class MyClass { public: int a,b; private: int c; public: friend void show(MyClass& cls) //友元函数 { printf(" 阅读全文
posted @ 2020-02-22 22:25 hellozhangjz 阅读(119) 评论(0) 推荐(0)
摘要: 参考 什么类需要重载赋值运算符 先来看一个普通类的直接赋值。 #include <iostream> using namespace std; class person{ int age; public: person(const int& a=10):age(a){} //构造函数 ~person 阅读全文
posted @ 2020-02-22 22:22 hellozhangjz 阅读(1731) 评论(0) 推荐(1)
摘要: 挖个坑,到时候看了 "Google的编码规范" 再写 双目运算符两侧空格 (有时为了紧凑也可以不加) 关键字 if 、 while、 for后加空格 后缀运算符不加空格,结构体成员(s.a),函数调用foo(1),数组成员a[1] 长语句(大于80个字符)折行写,与表达式或参数对齐 较长字符串分行书 阅读全文
posted @ 2020-02-22 17:58 hellozhangjz 阅读(189) 评论(0) 推荐(0)