代码规范及数学之美读后感
谷歌的代码规范
一:头文件
头文件应该能够自给自足(self-contained,也就是可以作为第一个头文件被引入),以 .h 结尾。至于用来插入文本的文件,说到底它们并不是头文件,所以应以 .inc 结尾。不允许分离出 -inl.h 头文件的做法.
define保护:所有头文件都应该使用 #define 来防止头文件被多重包含, 命名格式当是:
内联函数:只有当函数只有 10 行甚至更少时才将其定义为内联函数.优点: 只要内联的函数体较小, 内联该函数可以令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用内联.
缺点: 滥用内联将导致程序变得更慢. 内联可能使目标代码量或增或减, 这取决于内联函数的大小. 内联非常短小的存取函数通常会减少代码大小, 但内联一个相当大的函数将戏剧性的增加代码大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。
结论: 一个较为合理的经验准则是, 不要内联超过 10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用!
二:函数
所有按引用传递的参数必须加上 const. 在 C 语言中, 如果函数需要修改变量的值, 参数必须为指针, 如 int foo(int pval). 在 C++ 中, 函数还可以声明为引用参数: int foo(int &val).
函数重载:若要使用函数重载, 则必须能让读者一看调用点就胸有成竹, 而不用花心思猜测调用的重载函数到底是哪一种. 这一规则也适用于构造函数. 你可以编写一个参数类型为 const string& 的函数, 然后用另一个参数类型为 const char 的函数对其进行重载
函数返回类型后置语法:只有在常规写法 (返回类型前置) 不便于书写或不便于阅读时使用返回类型后置语法.
三:格式
每一行代码字符数不超过 80.
尽量不使用非 ASCII 字符, 使用时必须使用 UTF-8 编码.
只使用空格, 每次缩进 2 个空格.
返回类型和函数名在同一行, 参数也尽量放在同一行, 如果放不下就对形参分行, 分行方式与 函数调用 一致.
更多详细的Google代码规范参考:http://zh-google-styleguide.readthedocs.org/en/latest/google-cpp-styleguide/
阿里的代码规范:
https://blog.csdn.net/LuoJun_/article/details/77082966
百度的代码规范:
https://blog.csdn.net/gb4215287/article/details/69940060
数学之美的读后感:
吴军博士本书的架构:将通讯原理的知识脉络运用到自然语言处理当中。从比较语言文字和数字信息,再到运用统计知识,逐步建立模型。从网上了解到吴军博士是谷歌中,日,韩搜索算法的发明人,但是本书却没有像一般教材那样将知识点讲的那么晦涩,让初学者觉得云里雾里,反而他用一种过来人,技术家的角度来阐释自然语言处理的过往。这样将不同的学科的知识交叉融汇,比如通信等等,更有利于我们选择自己喜欢的研究方向,拓阔受限的视野。