随笔分类 -  C++学习

摘要:其实在学习的时候,一直没有搞懂为什么要用虚函数,为什么需要传递基类的引用或者指针,要用谁的时候写谁不就好了。其实这时候我的思维还局限在面向过程编程,不是面向对象编程。现在搞明白了,因为多态,利用继承的思想,减少代码复用。我们来看下面的例子。 #include<iostream> using name 阅读全文
posted @ 2024-08-25 12:59 Q星星 阅读(4) 评论(0) 推荐(0) 编辑
摘要:缓冲区溢出(Buffer Overflow)是一种常见的安全漏洞,发生在当程序尝试向一个固定长度的缓冲区写入过多数据时。这可能会导致超出缓冲区分配的内存范围,覆盖相邻内存区域的数据,从而可能引起程序崩溃或安全漏洞。 举个例子: #include <cstring> #include <iostrea 阅读全文
posted @ 2024-08-12 13:45 Q星星 阅读(80) 评论(0) 推荐(0) 编辑
摘要:在C++中,对象的创建可以在两种不同的内存区域进行:堆(heap)和栈(stack)。这两种内存区域在管理方式、生命周期、性能和使用场景上有所不同。以下是堆和栈上对象创建的主要区别: 栈上对象创建: 自动内存管理:栈上的对象在创建时自动分配内存,在离开作用域时自动销毁,无需手动管理内存。 生命周期: 阅读全文
posted @ 2024-08-12 09:55 Q星星 阅读(54) 评论(0) 推荐(0) 编辑
摘要:1.引用变量是一个别名,也就是说,是已经存在的某个变量另外一个名字。声明引用时,需要将其初始化为一个变量。引用只是访问数据的方式。 2.引用的格式: 变量类型 定义的变量名 = 变量; 变量类型 &引用变量名 = 定义的变量名; 3.引用的特点:①一个变量可取多个别名。②引用必须初始化,只有别名是不 阅读全文
posted @ 2024-08-02 13:21 Q星星 阅读(46) 评论(0) 推荐(0) 编辑
摘要:const指针 基础:const是constant的缩写,意思是不变的。也就是说const修饰的变量,是不能被改变的。 指针定义 int *p,那么我们来看一下 const加入int *p有三个地方可以加,分别是const int *p,int const *p,int *const p。 1.co 阅读全文
posted @ 2024-07-31 10:35 Q星星 阅读(92) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示