- 博客(17)
- 收藏
- 关注
原创 C++:模板
在预处理、编译、汇编、链接的过程中,声明在编译时都可以通过,但是没有地址,只有在链接时拿着修饰后的函数名去其他符号表查找。对于情况3,原理如下:由于在**.o文件中由于模板,在该文件中由于模板不能实例化,不能生成地址,所以在符号表中查不到链接。模板可以减少代码量,可以理解为“一个瓶子可以装多种酒”,如下图所示是一个输出的模板,可以对多种类型进行。特化可以理解为为一般的方法增加特殊版本,这样就能让在特殊的情况也能照样使用。2、函数链接没查到,因为函数没有定义。3、函数链接查不到,但是函数定义了。
2024-03-25 21:49:24 197
原创 C++:容器适配器、deque、优先队列、反向迭代器
deque是一个双端队列,但是又与一般队列的性质不同,deque可以头插头删,也可以访问任意一个位置的数据,可以说vector和list的方法deque都有,但是deque有较多的坑。可以使用正向迭代器去封装反向迭代器,正向迭代器和反向迭代器是对称的,在反向迭代器中进行*操作是解引用前一个位置。所以高频的头插头删是适合deque的,deque用来适配stack和queue的默认容器是合适的。但是[]不够极致,计算在哪个buff,在哪个buff的第几个。1、先看在不在第一个buff数组,在就找位置。
2024-03-21 17:07:14 156 1
原创 C++基础
访问变量时优先访问局部变量再是全局域,并在这一过程中不会自动去命名空间检索变量(一般不会使用展开命名空间,否则可能会导致歧义),使用“::”域作用限定域指定访问一个域的变量形式位“域::变量名”,(域为空时表示全局域),所以可以使用域作用限定符去指定访问一个命名空间的变量。所以C++中同名函数的形参列表(参数个数、类型或类型顺序)不同才可以。函数重载是函数的一种特殊情况,C++允许在同一个作用域中声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数、类型或类型顺序)不同,才称为函数重载。
2024-03-05 19:27:22 883 1
原创 【操作系统】FIFO先进先出页面置换算法(C语言实现)
FIFO页面置换算法,计算缺页率,文末附代码。模拟内存的页式管理,实现内存的分配和调用,完成虚拟内存地址序列和物理内存的对应。
2022-12-05 19:18:14 9171 6
原创 我妹问我函数有什么用,我专门举了汉诺塔问题的例子,我奶奶看了都说好!!!
我妹问我函数有什么用,我专门举了汉诺塔问题的例子,我奶奶看了都说好!!!
2022-10-19 21:27:26 283 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人