C++
学无止境2022
吉德林法则,把难题清清楚楚地写出来,便已经解决了一半。
展开
-
c和c++分别有哪些类型限定符
然而,现代编译器通常会自动优化变量的存储方式,因此register限定符在C++中已经不常用了。mutable:用于修饰类的非静态成员变量,在常量成员函数中允许修改该变量的值。C和C++都有一些类型限定符,用于修饰变量的类型和行为。// C++中的restrict指针声明。// C中的restrict指针声明。// C++中的mutable成员变量声明。// C++中的常量声明。// C++中的易变变量声明。// C中的寄存器变量声明。// C中的易变变量声明。// C中的常量声明。原创 2024-03-21 16:37:19 · 202 阅读 · 0 评论 -
C++:指针 引用 普通变量适用场景
需要注意的是,指针和引用都可以用于间接访问和修改内存中的数据,但它们有一些区别。使用指针的情况: 指针是一个变量,它存储了一个内存地址。使用普通变量的情况: 普通变量是最基本的数据类型,它存储了一个特定的值。使用引用的情况: 引用是一个已存在对象的别名,它提供了对对象的直接访问。当需要在函数中修改传递的参数值时,可以使用指针作为函数的参数。当需要在函数中修改传递的参数值时,可以使用引用作为函数的参数。当只需要存储和操作一个特定的值时,可以使用普通变量。当需要在函数之间共享数据时,可以使用指针。原创 2024-03-20 19:23:33 · 273 阅读 · 0 评论 -
定义变量(内存)时 定义在堆区 栈区 还是全局区-根据所需变量的特点选择合适的内存区域-作用范围和生命周期
当需要定义大内存数组时,通常应该将其定义在堆区。堆区是用于动态分配内存的区域,它的大小由操作系统决定。在堆区分配内存可以通过使用关键字"new"来实现,例如:int* arr = new int[1000]。在堆区分配的内存需要手动释放,以避免内存泄漏,可以使用关键字"delete"来释放内存,例如:delete[] arr。相比之下,栈区是用于存储局部变量和函数调用的区域,它的大小有限。在栈区定义的数组大小通常较小,且会随着函数的结束而自动释放,无需手动释放。原创 2024-03-05 10:59:09 · 360 阅读 · 1 评论 -
mutable关键字 mutable_xxx_xxx()
问题来了,如果我想在常成员函数内部,修改对象的某个成员变量时,怎么办?这时,就需要 引入 mutable,将该对象的成员变量定义为 mutable 变量,但是,我们会把定义为mutable的这个变量,看做不属于对象的状态。这样,即使在常成员函数内部,mutable变量也可以被修改,与此同时,常成员函数内部,对于对象的其他成员变量(即对象的内部状态)还是不能修改的!这么做的目的是,在常成员函数内部,不允许修改调用它的对象的内部状态(即不许修改对象的成员变量的值)。没关系,继续往下看!一定要看完就豁然开朗了!原创 2024-03-04 13:24:42 · 168 阅读 · 0 评论 -
先学会怎么用---怎么学---找示例呗-------------- 原理可以慢慢了解 哈希表(散列表)原理详解
哈希链表的实现C++ https://blog.csdn.net/Worthwhile_DUT/article/details/121696523?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164188158616780271514845%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=1641881586167原创 2022-01-11 14:27:56 · 230 阅读 · 0 评论