- 引用(Reference)是C++语言相对于C语言的又一个扩充,类似于指针,只是在声明的时候用&取代了*。引用可以看做是被引用对象的一个别名,在声明引用时,必须同时对其进行初始化。引用的声明方法如下: 类型标识符 &引用名 = 被引用对象 [例1]C++引用示例: int a = 10; int &b = a; cout<<a<<" "<<b<<endl; cou... 引用(Reference)是C++语言相对于C语言的又一个扩充,类似于指针,只是在声明的时候用&取代了*。引用可以看做是被引用对象的一个别名,在声明引用时,必须同时对其进行初始化。引用的声明方法如下: 类型标识符 &引用名 = 被引用对象 [例1]C++引用示例: int a = 10; int &b = a; cout<<a<<" "<<b<<endl; cou...
- 重载双目运算符时,运算符函数中应该具有两个参数,若运算符函数作为类的成员函数(当运算符重载函数作为类的成员函数时,要求操作数左边必须是一个对象,而函数的参数可以是同类的对象也可以是普通的变量),则只需要一个参数。 双目运算符 双目运算符就是具有两个操作数的运算符。如 +、-、==等。 对双目运算符而言,成员函数重载运算符的函数参数表中只有一个参数,而用友... 重载双目运算符时,运算符函数中应该具有两个参数,若运算符函数作为类的成员函数(当运算符重载函数作为类的成员函数时,要求操作数左边必须是一个对象,而函数的参数可以是同类的对象也可以是普通的变量),则只需要一个参数。 双目运算符 双目运算符就是具有两个操作数的运算符。如 +、-、==等。 对双目运算符而言,成员函数重载运算符的函数参数表中只有一个参数,而用友...
- Algorithm:C++语言实现之队列相关算法(最短路径条数问题、拓扑排序) 目录 队列 1、最短路径条数问题 2、拓扑排序 队列 1、最短路径条数问题 Algorithm:C++语言实现之队列相关算法(最短路径条数问题、拓扑排序) 目录 队列 1、最短路径条数问题 2、拓扑排序 队列 1、最短路径条数问题
- 类的静态成员包括静态的数据成员和静态的成员函数! static关键字 静态数据成员 比如我们现在要设计一款战争游戏,在这款游戏中,分为多个兵种,每个兵种都有一定数量的士兵,游戏过程中,每隔一定时间每个兵种都会产生一定数量的士兵,由于战争的消耗,每个兵种的士兵都会减少。 为了使情节更逼真,引入了士气这个概念,当士气比较高的时候,这个兵种的战斗力就比较强,士... 类的静态成员包括静态的数据成员和静态的成员函数! static关键字 静态数据成员 比如我们现在要设计一款战争游戏,在这款游戏中,分为多个兵种,每个兵种都有一定数量的士兵,游戏过程中,每隔一定时间每个兵种都会产生一定数量的士兵,由于战争的消耗,每个兵种的士兵都会减少。 为了使情节更逼真,引入了士气这个概念,当士气比较高的时候,这个兵种的战斗力就比较强,士...
- 在声明一个类的时候,是没有分配存储空间的,只有在真正定义一个对象的时候,程序才会为这个对象分配相应的存储空间。 如果定义了多个对象,这些对象都有自己的存储空间,但是这些对象都是用相同的成员方法的。 当不同的对象调用成员方法时,怎么保证就是这个对象的成员? this指针 在每个成员函数中,都包含一个特殊的指针。 这个指针的名字是固定的,就是this指针... 在声明一个类的时候,是没有分配存储空间的,只有在真正定义一个对象的时候,程序才会为这个对象分配相应的存储空间。 如果定义了多个对象,这些对象都有自己的存储空间,但是这些对象都是用相同的成员方法的。 当不同的对象调用成员方法时,怎么保证就是这个对象的成员? this指针 在每个成员函数中,都包含一个特殊的指针。 这个指针的名字是固定的,就是this指针...
- 我们自己写的String类具有以下函数 1.构造函数 String(const char *s); //用c字符串s初始化 String(int n,char c); //用n个字符c初始化12 2.拷贝和赋值 String& String(String& str); const String& operator=(String&... 我们自己写的String类具有以下函数 1.构造函数 String(const char *s); //用c字符串s初始化 String(int n,char c); //用n个字符c初始化12 2.拷贝和赋值 String& String(String& str); const String& operator=(String&...
- C++提供构造函数来处理对象的初始化。 构造函数是一种特殊的成员函数,不需要用户来调用,定义对象时被自动执行。 构造函数名字与类名相同,无返回类型(void也不能有哦)。 可以由用户自己定义实现,根据需要设计对数据成员进行初始化 用上个例子来继续写代码进去 CTime为类名 无参数的构造函数: 在.h文件中进行声明: CTime(); 在.cp... C++提供构造函数来处理对象的初始化。 构造函数是一种特殊的成员函数,不需要用户来调用,定义对象时被自动执行。 构造函数名字与类名相同,无返回类型(void也不能有哦)。 可以由用户自己定义实现,根据需要设计对数据成员进行初始化 用上个例子来继续写代码进去 CTime为类名 无参数的构造函数: 在.h文件中进行声明: CTime(); 在.cp...
- VS与VC的区别: VS(Visual Studio)是工具,如VS2008,VS2012等集成开发环境,它们支持C、C++、JAVA、C#等语言开发。 VC(Visual C++)是语言。 温馨提示:如果上述内容帮到了您或者有什么错误,而您又是注册用户的话,请不要吝惜自己的鼠标和键盘,点赞或者留言指出,感谢支持! VS与VC的区别: VS(Visual Studio)是工具,如VS2008,VS2012等集成开发环境,它们支持C、C++、JAVA、C#等语言开发。 VC(Visual C++)是语言。 温馨提示:如果上述内容帮到了您或者有什么错误,而您又是注册用户的话,请不要吝惜自己的鼠标和键盘,点赞或者留言指出,感谢支持!
- 流插入,流提取运算符重载和类型转换的讲解和实例 重载流插入和提取运算符的运算符函数,不能作为类的成员函数,只能作为普通函数 流插入,流提取运算符重载 流插入运算符”<<”和流提取运算符”>>”也可以被用来重载。 我们可以使用cout对一个int,string等等类型的数据进行输出,我们却不可以对我们自己定义的一个类的对象进行直... 流插入,流提取运算符重载和类型转换的讲解和实例 重载流插入和提取运算符的运算符函数,不能作为类的成员函数,只能作为普通函数 流插入,流提取运算符重载 流插入运算符”<<”和流提取运算符”>>”也可以被用来重载。 我们可以使用cout对一个int,string等等类型的数据进行输出,我们却不可以对我们自己定义的一个类的对象进行直...
- 走读webrtc的代码能看到各种风格的代码,比如析构函数就有很多种,看到图1的写法还是可以理解的,但是图2就些疑惑了。 图1 RtpSenderBase类在定义时用到了另一种析构函数声明的方式: 图2 基类的析构函数通常必须是虚拟的,但是派生类的析构函数呢?在C++ 11中,使用关键字“override”和“default”明确使用... 走读webrtc的代码能看到各种风格的代码,比如析构函数就有很多种,看到图1的写法还是可以理解的,但是图2就些疑惑了。 图1 RtpSenderBase类在定义时用到了另一种析构函数声明的方式: 图2 基类的析构函数通常必须是虚拟的,但是派生类的析构函数呢?在C++ 11中,使用关键字“override”和“default”明确使用...
- C++中可以使用friend关键字来将函数、类声明为某个类的友元 友元包括友元函数和友元类 友元具有一些特权,可以访问private的成员 友元只能授予,不能索取,单向,不能传递(比如a是b的友元,b是c的友元,但a不是c的友元) 友元函数 在类体中使用friend关键字对友元函数进行声明: 将非成员函数/一般函数声明为友元: friend vo... C++中可以使用friend关键字来将函数、类声明为某个类的友元 友元包括友元函数和友元类 友元具有一些特权,可以访问private的成员 友元只能授予,不能索取,单向,不能传递(比如a是b的友元,b是c的友元,但a不是c的友元) 友元函数 在类体中使用friend关键字对友元函数进行声明: 将非成员函数/一般函数声明为友元: friend vo...
- 顺序表结构的存储方式非常容易理解,操作也十分方便。但是顺序表结构有如下一些缺点: 1.在插入或者删除结点时,往往需要移动大量的数据。 2.如果表比较大,有时难以分配足够的连续存储空间,往往导致内存分配失败,而无法存储。 后面会有链表结构的章节。 直接上代码,代码中有详细注释,请自己领悟 #include <stdio.h> #include <stdlib.h... 顺序表结构的存储方式非常容易理解,操作也十分方便。但是顺序表结构有如下一些缺点: 1.在插入或者删除结点时,往往需要移动大量的数据。 2.如果表比较大,有时难以分配足够的连续存储空间,往往导致内存分配失败,而无法存储。 后面会有链表结构的章节。 直接上代码,代码中有详细注释,请自己领悟 #include <stdio.h> #include <stdlib.h...
- 目录 前言 1. CString与std::string的相互转化 2. string、char *、char[]的相互转换 前言 C++编程中经常会遇到各种字符、字符串之间的转换问题,这里简单的做个整理,具体内容直接参考实例代码。 1. CString与std::string的相互转化 报错: const std::string' (aka 'co... 目录 前言 1. CString与std::string的相互转化 2. string、char *、char[]的相互转换 前言 C++编程中经常会遇到各种字符、字符串之间的转换问题,这里简单的做个整理,具体内容直接参考实例代码。 1. CString与std::string的相互转化 报错: const std::string' (aka 'co...
- 目录 前言 正文 前言 《C++面试常见问答题看这三篇文章就够了》的上篇和中篇主要是理论知识的问答,下篇的重点则是代码相关的问答题类型。 《C++面试常见问答题看这三篇文章就够了(上)》 《C++面试常见问答题看这三篇文章就够了(中)》 《C++面试常见问答题看这三篇文章就够了(下)》(本文) 正文 1. 代码int i=3;i&... 目录 前言 正文 前言 《C++面试常见问答题看这三篇文章就够了》的上篇和中篇主要是理论知识的问答,下篇的重点则是代码相关的问答题类型。 《C++面试常见问答题看这三篇文章就够了(上)》 《C++面试常见问答题看这三篇文章就够了(中)》 《C++面试常见问答题看这三篇文章就够了(下)》(本文) 正文 1. 代码int i=3;i&...
- 本篇博客讲解: 运算符重载的规则,以及实例 运算符重载的规则 被重载的运算符必须是已经存在的C++运算符,不能重载自己创建的运算符。 运算符被重载之后,原有功能仍然保留。只是扩展了原有功能。 重载不能改变运算符运算对象的个数。 +运算符具有两个操作数,在+运算符函数作为类(例如上个例子中的CTime)的成员函数的时候,有一个参数是隐含的,也就是当前... 本篇博客讲解: 运算符重载的规则,以及实例 运算符重载的规则 被重载的运算符必须是已经存在的C++运算符,不能重载自己创建的运算符。 运算符被重载之后,原有功能仍然保留。只是扩展了原有功能。 重载不能改变运算符运算对象的个数。 +运算符具有两个操作数,在+运算符函数作为类(例如上个例子中的CTime)的成员函数的时候,有一个参数是隐含的,也就是当前...
上滑加载中
推荐直播
-
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中 -
华为云码道全新升级,多会话并行与多智能体协作2026/05/08 周五 19:00-21:00
王一男-华为云码道产品专家;张嘉冉-华为云码道工程师;胡琦-华为云HCDE;程诗杰-华为云HCDG
华为云码道4月份版本全新升级,此次直播深度解读4月份产品特性,通过“特性解读+实操演示+实战案例+设计创新”的组合,全方位展现码道在多会话并行与多智能体协作方面的能力,赋能开发者提升效率
正在直播
热门标签