C/C++
文章平均质量分 74
一些C++编程的基础知识,注意事项,及一些库的应用的记录笔记
低着头走上坡路
github主页:https://github.com/yizhixiaohuihui
专注数字IC、脚本语言、C/C++
展开
-
使用Pollard_rho算法分解质因数
Pollard_rho算法是找到一个数的最大质因数,我参考此算法进行修改,实现了将一个数分解为质因数相乘形式的程序。原创 2024-04-01 15:29:05 · 509 阅读 · 0 评论 -
[C++] 虚函数、override、final、父类对象与子类对象详解
" 保护继承 " 和 " 私有继承 " 的 派生类 , 是 不具有 基类 的 完整功能的 , 因为 最终继承 后的派生类 , 无法在 类外部调用 父类的 公有成员 和 保护成员;,在程序运行时期,找到动态绑定到父类指针上的对象(可能是某个子类对象,也可能是父类对象),然后系统内部查一个虚函数表,找到函数的入口地址,从而。纯虚函数是在基类中声明的虚函数,它在基类中没有定义,但要求任何派生类都要定义自己的实现方法。,明确表示子类的这个虚函数是重写父类的,如果子类与父类虚函数的签名不一致,编译器就会报错。原创 2024-03-06 15:31:40 · 2278 阅读 · 1 评论 -
C++中的宏
宏分为几种:#,##, \ 在一个宏中的参数前面使用一个#,预处理器会把这个参数转换为一个字符数组,换言之就是:****#是“字符串化”的意思,出现在宏定义中的#是把跟在后面的参数转换成一个字符串。注意:其只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。例如:上述代码给出了基本的使用与空格处理规则,空格处理规则如下:输出:当传入参数名间存在空格时,编译器将会自动连接各个子字符串,用每个子字符串之间以一个空格连接,忽略剩余空格。原创 2024-01-24 14:24:07 · 498 阅读 · 1 评论 -
C++/C中的‘extern’关键词
C++虽然兼容C,但C++文件中函数编译后生成的符号与C语言生成的不同。因为C++支持函数重载,C++函数编译后生成的符号带有函数参数类型的信息,而C则没有。例如`int add(int a, int b)`函数经过C++编译器生成.o文件后,`add`会变成形如`add_int_int`之类的, 而C的话则会是形如`_add`, 就是说:相同的函数,在C和C++中,编译后生成的符号不同。原创 2024-01-17 16:11:23 · 667 阅读 · 0 评论 -
[C++ Json开源库] nlohmann安装与使用
nolhmann json是一个为现代C++(C++11)设计的JSON解析库,主要特点是:1、易于集成,仅需一个头文件,无需安装依赖2、易于使用,可以和STL无缝对接,使用体验近似python中的json。原创 2024-01-19 19:53:13 · 4382 阅读 · 4 评论