- @TOC 零、前言本章主要讲解学习C++中智能指针的概念及使用 一、为什么需要智能指针示例:double Division(int a, int b){ // 当b == 0时抛出异常 if (b == 0) { throw "Division by zero condition!"; } return (double)a / (double)b;}void Func(){ //如果发生除... @TOC 零、前言本章主要讲解学习C++中智能指针的概念及使用 一、为什么需要智能指针示例:double Division(int a, int b){ // 当b == 0时抛出异常 if (b == 0) { throw "Division by zero condition!"; } return (double)a / (double)b;}void Func(){ //如果发生除...
- @TOC 零、前言本章主要学习C++中的异常这一方面的知识 一、C/C++处理错误 1、C处理错误方式传统的错误处理机制:终止程序,如assert,缺陷:用户难以接受。如发生内存错误,除0错误时就会终止程序返回错误码,缺陷:需要程序员自己去查找对应的错误。如系统的很多库的接口函数都是通过把错误码放到errno中,表示错误C 标准库中setjmp和longjmp组合,这个不是很常用注:实际中C... @TOC 零、前言本章主要学习C++中的异常这一方面的知识 一、C/C++处理错误 1、C处理错误方式传统的错误处理机制:终止程序,如assert,缺陷:用户难以接受。如发生内存错误,除0错误时就会终止程序返回错误码,缺陷:需要程序员自己去查找对应的错误。如系统的很多库的接口函数都是通过把错误码放到errno中,表示错误C 标准库中setjmp和longjmp组合,这个不是很常用注:实际中C...
- 小小计算器 实验1、“小小计算器”基本功能实现(1) 实验2、“小小计算器”基本功能实现(2) 实验3、“小小计算器”基本功能实现(3) 实验4、小小计算器”基本功能实现(4) 实验5、“小小计算器”基本功能实现(5) 实验6、“小小计算器”基本功能实现(6) 实验7、“小小计算器”基本功能实现(7) 实验8、“小小计算器”基本功能实现(8) 实验9、“小小计算器”基本功能实现(9) 实验... 小小计算器 实验1、“小小计算器”基本功能实现(1) 实验2、“小小计算器”基本功能实现(2) 实验3、“小小计算器”基本功能实现(3) 实验4、小小计算器”基本功能实现(4) 实验5、“小小计算器”基本功能实现(5) 实验6、“小小计算器”基本功能实现(6) 实验7、“小小计算器”基本功能实现(7) 实验8、“小小计算器”基本功能实现(8) 实验9、“小小计算器”基本功能实现(9) 实验...
- @TOC 零、前言本章是讲解学习C++11语法新特性的第三篇文章,主要学习lambda表达式,包装器,线程库 一、lambda表达式 1、lambda的引入在C++98中,如果想要对一个数据集合中的元素进行排序,可以使用std::sort方法示例:#include <algorithm>#include <functional>int main(){ int array[] = { 4,1,... @TOC 零、前言本章是讲解学习C++11语法新特性的第三篇文章,主要学习lambda表达式,包装器,线程库 一、lambda表达式 1、lambda的引入在C++98中,如果想要对一个数据集合中的元素进行排序,可以使用std::sort方法示例:#include <algorithm>#include <functional>int main(){ int array[] = { 4,1,...
- @TOC 零、前言本章将开始学习C++11的新语法特性,主要是一些比较常用的语法 一、C++11简介发展历程:在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为C++11之前的最新C++标准名不过由于TC1主要是对C++98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合并称为C++98/03标准从C... @TOC 零、前言本章将开始学习C++11的新语法特性,主要是一些比较常用的语法 一、C++11简介发展历程:在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为C++11之前的最新C++标准名不过由于TC1主要是对C++98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合并称为C++98/03标准从C...
- 关于数值进制以及进制之间转化问题C++代码如何实现不同进制的转化以十进制与八进制和转换为例 递归方法#include <iostream> using namespace std;int sb(int n) { if(n<8)return n; else return n%8+10*(sb(n/8));//递归思想关于进制转化 }int main() { int ... 关于数值进制以及进制之间转化问题C++代码如何实现不同进制的转化以十进制与八进制和转换为例 递归方法#include <iostream> using namespace std;int sb(int n) { if(n<8)return n; else return n%8+10*(sb(n/8));//递归思想关于进制转化 }int main() { int ...
- C++基础知识点+案例解释(第十二集) C++基础知识点+案例解释(第十二集)
- new 和 delete 是用户进行动态内存申请和释放的操作符,operator new 和 operator delete 严格来说不是 new 和 delete 的重载 (名字确实容易误导),而是系统提供的全局库函数,new 在底层调用 operator new 全局函数来申请空间,delete 在底层通过 operator delete 全局函数来释放空间。 new 和 delete 是用户进行动态内存申请和释放的操作符,operator new 和 operator delete 严格来说不是 new 和 delete 的重载 (名字确实容易误导),而是系统提供的全局库函数,new 在底层调用 operator new 全局函数来申请空间,delete 在底层通过 operator delete 全局函数来释放空间。
- C/C++ 的内存管理跟 JAVA 这些语言是不同的 —— JAVA 的程序不是直接跑在操作系统上的,JAVA 是在 JVM 虚拟机上运行的;C/C++ 的程序是直接跑在 OS 上的,这也是为什么我们学习 C/C++ 要学习内存管理的原因,所以 C/C++ 的学习者需要对系统了解的更深,而对于系统的知识更多的会在 Linux 系统编程的阶段去学习。 C/C++ 的内存管理跟 JAVA 这些语言是不同的 —— JAVA 的程序不是直接跑在操作系统上的,JAVA 是在 JVM 虚拟机上运行的;C/C++ 的程序是直接跑在 OS 上的,这也是为什么我们学习 C/C++ 要学习内存管理的原因,所以 C/C++ 的学习者需要对系统了解的更深,而对于系统的知识更多的会在 Linux 系统编程的阶段去学习。
- 一.面向过程和面向对象初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。示例:网上购物系统面向过程:下单,接单,邮递面向对象:卖家,买家,快递公司之间的交互以及关系 二.类的引入C语言中,结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数。... 一.面向过程和面向对象初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。示例:网上购物系统面向过程:下单,接单,邮递面向对象:卖家,买家,快递公司之间的交互以及关系 二.类的引入C语言中,结构体中只能定义变量,在C++中,结构体内不仅可以定义变量,也可以定义函数。...
- 本章将开始讲解运算符重载。运算符重载的技能是学习实现 STL 内部底层的不可缺少的 "利器" !所以本篇非常重要,下一篇会手把手实现一个Date类,可以进一步地实战体会运算符重载。 本章将开始讲解运算符重载。运算符重载的技能是学习实现 STL 内部底层的不可缺少的 "利器" !所以本篇非常重要,下一篇会手把手实现一个Date类,可以进一步地实战体会运算符重载。
- 本章将继续讲解C++中的面向对象的知识点,本篇主要讲解默认成员函数中的构造函数、析构函数和拷贝构造函数。还是和以前一样,我们将由浅入深地去讲解,以 "初学者" 的角度去探索式地学习。会一步步地推进讲解,而不是直接把枯燥的知识点倒出来,应该会有不错的阅读体验。如果觉得不错,可以 "一键三连" 支持一下博主! 本章将继续讲解C++中的面向对象的知识点,本篇主要讲解默认成员函数中的构造函数、析构函数和拷贝构造函数。还是和以前一样,我们将由浅入深地去讲解,以 "初学者" 的角度去探索式地学习。会一步步地推进讲解,而不是直接把枯燥的知识点倒出来,应该会有不错的阅读体验。如果觉得不错,可以 "一键三连" 支持一下博主!
- 啊朋友们好啊,我是柠檬叶子C。本章将对C++的基础,引用部分的知识进行讲解。 啊朋友们好啊,我是柠檬叶子C。本章将对C++的基础,引用部分的知识进行讲解。
- 起因今天在写C语言练习题时,发现Vscode工作区中出现了这样的情况:程序运行产生的可执行文件和源码混在一起,作为一名强迫症,我怎能容忍它 “如此放肆”,特意查看了一波官方文档后终于找到了解决办法,这是对.exe文件位置重定向后的工作区文件目录:怎么样?看起来是不是舒服多了?emmm……强迫症表示非常友好哦,下面就带大家看看我是如何解决的。 解决方法 文件建立现在关闭Vscode,在桌面新... 起因今天在写C语言练习题时,发现Vscode工作区中出现了这样的情况:程序运行产生的可执行文件和源码混在一起,作为一名强迫症,我怎能容忍它 “如此放肆”,特意查看了一波官方文档后终于找到了解决办法,这是对.exe文件位置重定向后的工作区文件目录:怎么样?看起来是不是舒服多了?emmm……强迫症表示非常友好哦,下面就带大家看看我是如何解决的。 解决方法 文件建立现在关闭Vscode,在桌面新...
- 本章将继续讲解C++入门部分的知识,将对内联函数、改版后的auto关键字、范围for,以及指针空值nullptr 等知识点进行讲解。 本章将继续讲解C++入门部分的知识,将对内联函数、改版后的auto关键字、范围for,以及指针空值nullptr 等知识点进行讲解。
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考
2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本
2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签