大家好,欢迎来到IT知识分享网。
我们上周讲过C++类和对象,也举了内部变量和函数的例子,当时的run()函数就属于成员函数的一种,而且该成员函数是定义在类定义内部的,那么这是一种方式,还有一种方式是可以定义在外部。
定义在内部函数我们都很清楚,那如果要定义在外部的话,我们就需要引入一个新的概念:范围解析运算符::,范围解析运算符::是由两个冒号组合而成。
注意,在::运算符之前必须使用类名,调用成员函数是在对象上使用点运算符。
如图所示,可以看到,定义在类定义外部的方式就是类名::函数名,调用的方式与定义在类定义内部的调用方式是相同的。
代码实现
//类成员函数和范围解析运算符 #include <iostream> using namespace std; class test { public: int a; //将函数定义在内部 int run() { return a + 1; } int run1(); }; //将函数定义在外部 int test::run1() { return a * a; } int main() { test test1; test1.a = 1; cout << test1.a << endl; cout << test1.run() << endl; cout << test1.run1() << endl; }
可以发现,run1函数可以直接使用类test当中的变量a。
结果测试
总结
面向对象,就是把相关的数据和方法组织成一个整体来进行看待,正如类成员函数示例,定义在类外部的函数与定义在类内部的函数一致,都属于该类,在主方法中皆可以进行调用,同时,范围解析运算符也叫做作用域区分符,指明一个函数或变量属于哪个类。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/48487.html