- 博客(7)
- 收藏
- 关注
原创 c++11新特性之关键字(关于auto、nullptr)
当在lambda表达式中捕获变量时,可以使用。可以帮助我们自动推导迭代器的类型。当处理STL容器时,
2024-06-15 19:22:08 757 1
原创 c++中的内存管理(关于指针,野指针,内存泄漏,智能指针)
指针是基础,它允许我们直接操作内存。但是,直接使用指针很容易出错,例如忘记释放内存导致内存泄漏,或者误用已经释放的指针(野指针)。野指针和内存泄漏是错误使用指针可能导致的两个问题。野指针通常是由于指针指向的内存被释放后,仍然尝试访问该内存导致的;而内存泄漏则是由于分配的内存没有被释放,导致内存资源的浪费。智能指针是为了解决野指针和内存泄漏问题而设计的。它们通过封装原始指针,并在适当的时候自动释放内存,从而减少了出错的可能性。智能指针是现代C++编程中推荐使用的内存管理方式。
2024-06-01 18:05:02 1556 1
原创 c++中既然有了malloc/free为什么还要有new/delete呢
是从C语言中继承的内存分配和释放函数,但C++为了更好地支持面向对象的编程范式,引入了。提供了更强大、更安全的内存管理功能,更适合于C++的面向对象编程范式。只是简单地分配和释放内存,它们不知道或关心对象的构造函数和析构函数。在C++中仍然可用,但。
2024-05-30 19:11:31 221
原创 c++内存分配
栈:临时存储,自动管理。堆(自由存储区):动态存储,需要显式管理。全局/静态:贯穿程序生命周期,自动管理。常量:存储常量数据,通常包含在全局/静态存储区中,只读。
2024-05-30 18:38:26 1598
原创 c++面向对象
c++是面向对象的语言,顾名思义是以对象为基础,将数据和操作封装在对象中,通过对象之间的交互完成程序的执行,而c是面向过程的语言,考虑的是如何通过一个过程将输入变成输出。
2024-04-25 20:29:25 142 1
原创 c++this指针
指针在 C++ 中存在的主要原因是为了在成员函数内部提供一种方式来引用调用该函数的对象本身。当成员变量和局部变量或参数名相同时,在大多数情况下,如果成员变量和参数名不同。编译器能够自动区分成员变量和参数。将会导致赋值操作实际上是在尝试将参数赋值给它们自己,而不是给对象的成员变量。前缀,我们可以明确指定我们正在引用的是成员变量而不是局部变量或参数。指针用来区分构造函数的参数和类的成员变量。但是,当参数名和成员变量名相同时,需要使用。表示的是当前对象实例的成员变量。这是一个创建键值对的过程,
2024-04-25 16:12:48 210 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人