当前位置: 首页 > news >正文

DAY7-C++进阶学习

模板

学习链接1:C++模板入门学习
学习链接2:C++模板进阶学习
STL的重要实现原理,模板的声明和定义建议放到一个文件 xxx.hpp 里面或者 xxx.h,防止编译错误。

函数模板特化

1.基础模板
2.template<>
3.函数名<特化类型>
4.参数形参保存一致

类模板特化

1.全特化
template<>
class Data<int , char>
2.部分特化
template
class Date<T1, char>
3.参数限制
template<typename T1, typename T2>
class Date<T1*, T2*>

继承

1.基类private成员在派生类中无论以什么方式继承都不可见
2.成员只想被派生类访问,使用protected
3.子类对象可以赋值给父类对象、指针或引用
4.基类对象不可赋值给派生类对象,需要通过强转才可

虚函数

虚函数与普通函数相同,存在代码段中,对象存放虚表指针,虚表实质是虚函数指针数组

编译原理

学习链接:gcc编译器编译过程分析
1.预处理

gcc -E -o file.i file

2.编译

gcc -S -o file.s file.i

3.汇编

gcc -c -o file.o file.s

4.链接

gcc -o newName file.o

gdb常见的功能说明

1.查看代码

l n

2.开始调试

r

3.退出调试

q

4.添加断点

b n :在第n行设置断点
b 函数名:在函数入口设置断点
b file:n:在指定函数第n行设置断点

5.查看断点

info b

6.删除断点

d no: 删除第几个断点

7.打开和关闭第几个断点

disable no
enable no

8.逐语句

s

8.逐过程

n

9.断点跳跃

c

10.查看变量

p name
display name

11.查看函数调用

bt
http://www.xdnf.cn/news/169219.html

相关文章:

  • Python爬虫课程实验指导书
  • 麒麟系统搭建离线NTP服务器,让局域网内windows系统同步其时间,并付排错避坑思路
  • Android Studio中创建第一个Flutter项目
  • 前端性能优化面试回答技巧
  • django admin 去掉新增 删除
  • 【愚公系列】《Manus极简入门》005-DeepSeek与Manus的创新之处
  • PostSwigger Web 安全学习:CSRF漏洞3
  • C# 利用log4net 工作台打印和保存到文件
  • 央视两次采访报道爱藏评级,聚焦生肖钞市场升温,评级币成交易安全“定心丸”
  • C# 类的基本概念(类成员)
  • 16bit 高精度低延时霍尔角度编码器,KTH7824,替代MA730
  • 高自由度与多功能指尖设计:Allegro灵巧手V5(4F Plus)的技术亮点
  • 电商数据采集电商,行业数据分析,平台数据获取|稳定的API接口数据
  • 榕壹云国际版短剧系统:基于Spring Boot+MySQL+UniApp的全球短剧创作平台
  • Scala 函数柯里化及闭包
  • 用 Nodemon 解决 npm run serve 频繁重启服务
  • 2个小时1.5w字| React Golang 全栈微服务实战
  • 双目RealSense系统配置rs_camera.launch----实现D435i自制rosbag数据集到离线场景的slam建图
  • BP 算法探秘 :神经网络的幕后引擎
  • OceanBase TPCC测试常见报错汇总
  • 游戏引擎学习第248天:清理数据块显示
  • 第11章 安全网络架构和组件(一)
  • python 3.14 暂不支持 pyside6 ? python 窗体无法显示!
  • 线性代数—向量与矩阵的范数(Norm)
  • 一、linux系统启动过程操作记录
  • 「Docker已死?」:基于Wasm容器的新型交付体系如何颠覆十二因素应用宣言
  • 部署mongodb三幅本集群
  • [Vulfocus解题系列]Apache HugeGraph JWT Token硬编码导致权限绕过(CVE-2024-43441)
  • RagFlow文档切块提升
  • 光敏材料与智能传感技术的能源系统创新研究