![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++基础
TenSun2023
这个作者很懒,什么都没留下…
展开
-
c++复制与拷贝构造函数
下面的程序运行结束会发生崩溃。问题出在拷贝构造函数上。在这种情况下,`string` 和 `second` 对象将共享相同的 `m_buffer` 指针,这意味着它们指向相同的内存块。然而,`second` 对象仍然保持着指向已释放内存的指针,当尝试访问 `second` 对象时,会导致未定义的行为,最终导致程序崩溃。在这个自定义的拷贝构造函数中,将 `m_size` 和 `m_buffer` 成员变量从源对象 `other` 复制到新对象中,确保新对象有独立的内存空间。原创 2023-06-26 14:49:52 · 106 阅读 · 0 评论 -
c++运算符及其重载
通过重载 `+` 运算符,我们可以像操作内置类型一样,使用 `+` 运算符对 `Vector` 对象进行相加操作。C++ 支持重载大部分的运算符,如算术运算符(`+`、`-`、`*`、`/` 等)、比较运算符(`<`、`>`、`==`、`!=` 等)、赋值运算符(`=`)、下标运算符(`[]`)等。其中,`operator运算符` 是要重载的运算符,可以是内置运算符或自定义的运算符。例如,`+` 代表重载加法运算符,`<<` 代表重载输出流运算符。例如,可以重载 `+` 运算符,实现自定义类型的相加操作。原创 2023-06-25 14:36:37 · 35 阅读 · 0 评论 -
C++mutable
虽然 `getValue` 函数被声明为 `const`,即不会修改类的状态,但由于 `counter` 被标记为 `mutable`,因此在 `getValue` 函数内部可以对其进行修改。使用 `mutable` 关键字的典型场景是当类的成员变量需要在某些情况下被修改,即使这些修改发生在 `const` 成员函数中。`mutable` 关键字的作用是允许被修饰的成员变量在 `const` 成员函数中被修改,即使这些函数被声明为 `const`。原创 2023-06-24 18:03:47 · 2774 阅读 · 0 评论 -
C++const
在上述示例中,函数 `printMessage` 接受一个 `const` 引用类型的参数 `message`。这意味着在函数内部,不能修改 `message` 的值,以保证函数不会对传入的参数产生副作用。在上述示例中,`printData` 函数被声明为 `const` 成员函数。这表示该函数不会修改类的成员变量,因此可以在 `const` 对象上调用该函数。在 C++ 中,`const` 是一个关键字,用于声明常量。在上述示例中,函数 `getValue` 的返回类型被声明为 `const int`。原创 2023-06-24 17:48:01 · 55 阅读 · 0 评论 -
c++字符串
std::string` 类的使用使得字符串处理更加方便和灵活,避免了手动处理字符数组的长度和内存管理。可以参考 C++ 标准库的文档以获取更多关于 `std::string` 类的详细信息和功能。C++ 提供了 `std::string` 类来处理字符串,它是 C++ 标准库中的一个强大且易于使用的字符串类型。`std::string` 类提供了许多成员函数和操作符,用于处理字符串的操作,包括字符串的连接、查找、替换、比较、提取子串等。原创 2023-06-24 10:57:06 · 69 阅读 · 1 评论 -
c++虚函数
3. 纯虚函数(Pure Virtual Function):虚函数也可以被声明为纯虚函数,即没有函数体的虚函数。虚函数表是一个存储指向虚函数的指针的表格,每个包含虚函数的类都有自己的虚函数表。当对象被创建时,会分配一个指向正确虚函数表的指针,并在运行时使用它来调用正确的虚函数。通过在基类中声明为虚函数,派生类可以对其进行覆盖,从而在运行时根据对象的实际类型调用相应的函数。虚函数的使用可以通过基类指针或引用来实现多态性,使得在运行时根据对象的实际类型来调用适当的函数。原创 2023-06-23 17:46:52 · 119 阅读 · 1 评论 -
c++继承
在派生类中,可以访问基类中的公有成员和保护成员,可以通过继承得到基类的属性和行为。3. 私有继承(Private Inheritance):在私有继承中,派生类继承基类的保护成员和公有成员,但不继承基类的私有成员。2. 保护继承(Protected Inheritance):在保护继承中,派生类继承基类的保护成员和公有成员,但不继承基类的私有成员。1. 公有继承(Public Inheritance):在公有继承中,派生类继承基类的公有成员和保护成员,但不继承基类的私有成员。原创 2023-06-23 16:23:32 · 69 阅读 · 0 评论 -
c++构造函数
构造函数原创 2023-06-23 14:51:15 · 46 阅读 · 0 评论 -
c++枚举
c++枚举原创 2023-06-23 12:16:18 · 159 阅读 · 1 评论 -
c++类的基础用法
实现了一个简单的日志类。原创 2023-06-22 19:54:15 · 25 阅读 · 1 评论 -
c++指针
【代码】c++指针。原创 2023-06-22 16:02:09 · 28 阅读 · 1 评论 -
c++if语句
下面是一个简单的if语句。原创 2023-06-22 09:35:12 · 42 阅读 · 0 评论 -
c++头文件
头文件通常包含函数,变量声明,宏定义和类型定义。通常将声明语句放在头文件中,可以在多个源文件引用这些声明,避免重复编写代码。原创 2023-06-21 21:16:08 · 23 阅读 · 0 评论 -
c++变量-基础
通俗来说,变量就是为了使用内存中的数据,包括存储,删除,修改,给这些数据取的名字。原创 2023-06-21 19:50:45 · 27 阅读 · 0 评论