
C++基础
文章平均质量分 51
C++基础关键知识点
士 毅
记录日常工作[Qt/C++/QML/JavaScript/Python]等知识点应用。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ libcurl库讲解
libcurl是一个广泛使用的开源客户端URL传输库,支持多种协议,包括 HTTP、HTTPS、FTP、IMAP、POP3、SMTP 等。它允许开发者通过编程的方式发送和接收数据,与远程服务器进行交互。在 Windows 上使用libcurl,你需要首先下载和编译该库,或者从预编译的二进制包中获取它。原创 2024-04-04 22:04:00 · 1195 阅读 · 0 评论 -
C++中浅拷贝和深拷贝对象复制概念
在上面的例子中,浅拷贝构造函数只是简单地将指针 `data` 复制给新对象,导致两个对象共享相同的指针,容易出现潜在的问题。深拷贝是指在对象复制时,会复制对象指向的资源,而不是简单地复制指针。这样就可以避免多个对象共享同一资源带来的问题。根据运行结果可以看出,浅拷贝会导致两个对象共享同一资源,而深拷贝会将资源复制给新对象,避免了共享资源带来的问题。浅拷贝是指在对象复制时,只是复制对象的值,而不会复制对象指向的资源。,将原对象的数据复制给新对象,从而。,以避免潜在的问题。原创 2024-03-31 00:39:18 · 267 阅读 · 0 评论 -
C++纯虚函数的使用
在 `main` 函数中,创建了一个基类指针 `shapePtr` 指向派生类 `Circle` 的对象。- 派生类 `Circle` 中必须实现基类中的纯虚函数 `draw`,否则派生类也会成为抽象类。- 调用纯虚函数 `draw` 时,实际调用的是派生类 `Circle` 中的实际实现。纯虚函数是一种在C++中定义抽象基类的方法,它是一个在基类中声明但没有实现的虚函数。- 基类 `Shape` 中的虚函数 `draw` 被声明为纯虚函数。原创 2024-03-31 00:19:39 · 415 阅读 · 0 评论 -
C++中使用虚函数实现多态
在基类 `Shape` 中,`draw` 函数使用 `virtual` 关键字声明为虚函数,表示可以在派生类中被重写。- 在 `main` 函数中,创建了一个基类指针 `shapePtr` 指向派生类 `Circle` 的对象。- 派生类 `Circle` 中重写了基类中的虚函数 `draw`,实现了绘制一个圆的功能。- 调用虚函数 `draw` 时,实际调用的是派生类 `Circle` 中的重写函数。虚函数在基类中可以有默认实现,也可以是纯虚函数(没有实际实现,需要在派生类中实现)。原创 2024-03-31 00:07:56 · 425 阅读 · 0 评论 -
C++赋值运算符函数与拷贝构造函数
在这个例子中,`MyClass` 具有一个整型成员数据,当创建类的新实例时,拷贝构造函数被调用(比如`MyClass b = a;`),而当一个已经存在的实例被赋予另一个对象的值时,拷贝赋值运算符被调用(比如`c = a;注意,在`MyClass`类中,我们添加了输出语句来指明哪个函数被调用。当我们要将一个对象的值赋予另一个已经存在的对象时,我们就会使用赋值构造函数。其中,`old_obj`是一个源对象的引用,我们将从其中复制数据。在这里,`old_obj`是我们要从中获取值的源对象。原创 2024-03-30 13:35:36 · 704 阅读 · 0 评论 -
C++类继承
在C++中,类继承是一种面向对象编程的重要特性,允许一个新类(派生类)从一个现有类(基类)中继承属性和行为。通过理解类继承的基本语法和实例代码,你可以更好地掌握C++中的面向对象编程特性,从而设计更加灵活和可维护的程序结构。,即一个类可以派生自另一个派生类。使得类的继承更加灵活,可以实现。C++类继承讲解及代码示例。原创 2024-03-30 12:56:15 · 192 阅读 · 0 评论 -
C++就业方向
1. 游戏开发:C++在游戏开发领域有着广泛应用,许多游戏引擎和大型游戏都是基于C++开发的,因此游戏开发工程师是C++就业的一个主要方向之一。无论选择哪个就业方向,掌握扎实的C++编程基础和相关领域的知识是非常重要的。同时,不断学习和保持技术更新是成为一个成功的C++工程师的关键。3. 金融科技:金融机构对高性能和高频交易系统有需求,C++表现出色的性能使其成为金融科技领域的一种首选语言。C++是一种非常强大和广泛应用的编程语言,特别在一些特定领域具有出色的应用前景。原创 2024-03-30 12:24:05 · 2610 阅读 · 0 评论 -
C++ 11 auto新特性使用实例
否则编译器无法推导出变量的类型。此外,C++11还引入了nullptr关键字来表示空指针,这可以避免一些潜在的类型转换问题。// result的类型为int。// str的类型为const char*int result = sum(1, 2);// result的值为3。// pi的类型为double。// 输出hello。// num的类型为int。表达式的结果类型来推导。原创 2024-03-03 17:23:44 · 837 阅读 · 0 评论 -
C++基础之内存管理中的内存泄漏和野指针问题
如使用智能指针(如unique_ptr和shared_ptr)来自动管理内存,确保每次动态分配内存后都有相应的释放操作,以及在不再需要指针时将其设置为nullptr。b. 对这个问题的分析:我们需要使用new操作符来分配内存,并在不再需要时使用delete操作符来释放内存。为了避免野指针,我们可以使用智能指针来自动管理内存。a. 清晰的问题描述:假设我们要创建一个动态数组,用于存储用户输入的整数,并在使用完毕后释放内存。(2)指针和引用:掌握指针的概念,理解指针如何指向内存地址,以及引用与指针的不同之处。原创 2024-03-03 15:16:48 · 734 阅读 · 0 评论