c++ 复习一
auto
const
c++11 初始化数组 1.可以省略等号 2.可不在打括号包含值,默认为0 3.列表初始化禁止缩窄转换
1 | std::string MetricUtils::EscapeMetricNameAndTag(const std::string& name) { |
如上的代码,编译器会优化,其中 output_name 这个字符串会被优化成静态的,即不会每次都创建。
C / C++ 保留两位小数(setprecision(n)的一些用法总结)
https://blog.csdn.net/qq_36667170/article/details/79265224
如下,有三种方法
1 | // 1 |
cppcheck 是c/c++的静态代码检查工具,可以发现代码的静态缺陷,发现代码的逻辑错误,不过他不会检查代码的语法错误
安装:yum install cppcheck
1 | cppcheck 是一个静态代码检查工具,支持c, c++ 代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。 执行的检查包括: |
一般使用命令:cppcheck -j 3 –enable=all src (-j 表示工作线程个数,一般工程比较大的时候好用,src 是源代码目录)
c++容器 emplace 方法原理剖析:https://www.whcsrl.com/blog/1005976
c++ 中的 explicit 关键字只能用于修饰只有一个参数的类构造函数,他的作用是表明该构造函数是显式的。
与之对应的 implicit 关键字则表明构造函数是隐式的,类构造函数默认情况下即声明为 implicit 隐式的
1 | class A { |
如上,表达式 2 中的 A a2 = 10
进行解释,在 C++ 中,如果构造函数只有一个参数时,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型转换为该类对象。