您现在的位置是:亿华云 > IT科技类资讯
EasyC++,类的实现
亿华云2025-10-02 14:21:38【IT科技类资讯】0人已围观
简介大家好,我是梁唐。想要追求更好阅读体验的同学,可以点击「阅读原文」访问github仓库。类的实现当我们完成了类定义之后, 还需要来实现类当中的函数。比如我们在stock00.h当中定义了一个类:#if
大家好,类的实现我是类的实现梁唐。
想要追求更好阅读体验的类的实现同学,可以点击「阅读原文」访问github仓库。类的实现
类的类的实现实现
当我们完成了类定义之后, 还需要来实现类当中的类的实现函数。
比如我们在stock00.h当中定义了一个类:
#ifndef STOCK00_H_ #define STOCK00_H_ #include <string> class Stock { private: std::string company; long shares; double share_val; double total_val; void set_tot() { total_val = shares * share_val;} public: void accquire(const std::string &co,类的实现 long n, double pr); void buy(long num, double price); void sell(long num, double price); void update(double price); void show(); }; #endif成员函数
在这个定义当中,我们只是类的实现声明了函数,并没有具体实现函数的类的实现逻辑。
我们通常会在同名的类的实现cpp文件当中实现,实现的亿华云类的实现时候,需要使用作用域解析运算符来表示函数所属的类的实现类:
void Stock::update(double price) { ... }这样就表明了update函数所属Stock这个类,这也就意味着我们可以创建属于其他类的类的实现同名函数:
void Buffoon::update() { ... }其次,我们在成员函数当中,类的实现可以访问private限定的类的实现成员变量。比如说在show函数当中,我们可以这样实现:
void Stock::show() { std::cout << company << shares << share_val << total_val << endl; }虽然company,shares都是类的私有成员,但在成员方法当中,一样可以正常访问。
再次,我们在成员方法当中调用另外一个成员方法,可以不需要解析运算符。比如我们要在show函数内调用update函数,直接使用update()即可,而无需前面的Stock::。
内联函数
我们再回过头来看一下Stock这个类的高防服务器定义,在类的定义当中,有一个叫做set_tot的函数。我们直接在类当中实现了逻辑。虽然同样是成员函数,但是在类当中直接实现的函数是有所区别的。在类声明当中实现的函数,会被视为是内联函数。
一般我们会把一些比较简短的函数在类的声明当中直接实现,当然我们也可以使用关键字inline,手动指定某个函数是内联的。
class Stock { private: void set_tot(); public: ... }; inline void Stock::set_tot() { total_val = shares * share_val; }本文转载自微信公众号「Coder梁」,可以通过以下二维码关注。转载本文请联系Coder梁公众号。服务器托管
很赞哦!(97474)
相关文章
- 边缘运营的新前沿阵地——Dell NativeEdge
- 数据中心基础设施管理的八个发展趋势
- 2024年值得关注的四个数据中心趋势
- 小白也能懂!2核4G服务器到底能扛多少并发?
- 毫末智行CEO顾维灏:毫末辅助驾驶用户行驶总里程数已突破1500万公里
- AMD EPYC嵌入式9005系列处理器:技术革新赋能性能飞跃
- 微软20年精炼,全球首个拓扑量子芯片出炉!巴掌大芯片碾压全球超算
- 施耐德电气EcoStruxure ITE(基础设施专家) 、EcoStruxure EAA(远程专家服务)荣获2023年度中国IT行业优秀运维服务奖
- 提高数据中心能效的六种方法
- 谷歌版“愚公移山”!历时四年,谷歌如何将数十亿行代码从Perforce迁移到全新的版本控制系统