![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++语法
文章平均质量分 72
Ameon Dora
这个作者很懒,什么都没留下…
展开
-
c++ log4cpp的实现 包含使用实例和下载源码
创建一个Appender,并指定其包含的Layout从系统中得到Category的根,将Appender添加到该Category中;设置Category的优先级记录日志关闭Category不要手动释放Category、Appender和Layout同一个Appender不要加入多个Category,否则它会被释放多次从而导致程序崩溃同一个Layout不要附着到多个Appender上,否则也会被释放多次导致程序崩溃每个Appender都设置了一个Layout,用于定义这个Appender日志的格式log4cp原创 2022-06-07 16:23:40 · 610 阅读 · 0 评论 -
c++STL算法 copy, uninitialized_copy, copy_backward的使用及源码剖析
参考文档copy - C++ Reference (cplusplus.com)将区间[first, last)内的元素复制到result指向的内存地址开始的内存区域中底层实现其实现与以下代码等价返回值一个指向复制的元素末尾的迭代器代码输出uninitialized_copy参考文档uninitialized_copy - C++ Reference (cplusplus.com)std uninitialized_copy - 简书 (jianshu.com)底层实现其实现与以下代码等价.原创 2022-06-11 10:22:36 · 901 阅读 · 0 评论 -
inline函数学习笔记
定义函数时,在函数的最前面以关键字“inline”声明函数,即可使函数称为内联声明函数关键字 inline 必须与函数定义体放在一起才能使函数成为内联,仅将 inline 放在函数声明前面不起任何作用 对于同一程序的不同文件,如果inlne函数出现的话,其定义必须相同。对于由两个文件computer.c和draw.c构成的程序来说,程序不能定义这样的min()函数,它在cmputer.c中指一件事情,而在draw.c中指另外一件事情。如果两个定义不相同,程序将会有未定义的行为。 为保证不会发生这样..原创 2022-06-07 15:33:22 · 147 阅读 · 0 评论 -
c++引用学习笔记
引用变量是一个别名,通过它可以操作其所引用的变量相当于变量的别名,可以直接修改引用绑定的变量**引用 约等于 const * **左值右值代码实现左值引用在汇编层面其实和普通的指针是一样的;定义引用变量必须初始化,因为引用其实就是一个别名,需要告诉编译器定义的是谁的引用。上述代码无法编译通过,因为10无法进行取地址操作,无法对一个立即数取地址,因为立即数并没有在内存中存储,而是存储在寄存器中,可以通过以下方法进行引用使用常引用来引用常量数字10,因为此刻内存上产生了临时变量保存了10, 这个临时变量是可以原创 2022-06-07 15:30:34 · 47 阅读 · 0 评论 -
const 修饰符
修饰类型 char/short/int/long特点在预编译阶段只是替换,没有类型检查,不会检查代码错误宏定义是直接替换不会分配内存宏定义可以通过#undef来使之前的宏定义失效宏定义不能作为参数传递给函数宏的好处定义代码或字符串、方法、参数const不能坏处使用大量宏,容易造成编译实际久,每次都需要重新替换特点在编译阶段,即程序运行时的一段代码有常量声明,在编译时会进行类型检查,会编译报错const常量定义是要分配内存的,存储在程序的数据段中const常量定义后将在定义域内永久有效const常量可以在函数原创 2022-06-07 15:18:18 · 63 阅读 · 0 评论 -
C++命名空间
不同的头文件中可能用了相同的名字来定义类或函数,这样在程序中就会出现名字冲突 为了解决命名冲突 匿名的命名空间,即不必特别声明的命名空间 例如c的库函数与自己定义的函数 为了兼容c语言而提出的 ...原创 2022-06-07 15:15:38 · 46 阅读 · 0 评论