2019.1.1-5 总结

一、 首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).

  总结:

        explicit关键字只需用于类内的单参数构造函数前面。由于无参数的构造函数和多参数的构造函数总是显示调用,这种情况在构造函数前加explicit无意义。

        google的c++规范中提到explicit的优点是可以避免不合时宜的类型变换,缺点无。所以google约定所有单参数的构造函数都必须是显示的,只有极少数情况下拷贝构造函数可以不声明称explicit。例如作为其他类的透明包装器的类。
  effective c++中说:被声明为explicit的构造函数通常比其non-explicit兄弟更受欢迎。因为它们禁止编译器执行非预期(往往也不被期望)的类型转换。除非我有一个好理由允许构造函数被用于隐式类型转换,否则我会把它声明为explicit,鼓励大家遵循相同的政策。、

二、 谷歌代码风格规范

         https://zh-google-styleguide.readthedocs.io/en/latest/contents/

三、  sprintf() 与  snprintf()的 区别

         参见 https://www.cnblogs.com/52php/p/5724390.html

四、  vim 配置cpplint and clang-format 配置

      

五、 代码分割

        https://unbug.github.io/codelf/#%E5%88%86%E7%B1%BB

六、 crontab 定时任务,需要crond 任务启动。

七、 代码检索

        https://unbug.github.io/codelf/

posted @ 2019-01-05 11:55  爱简单的Paul  阅读(169)  评论(0编辑  收藏  举报