新手求助,c++中什么时候用".",什么时候又用"::"呢?

比如我定义了一个Clock的类,代码如下

class Clock{
	int hour,minute,second;
	public:
		int gethour(int h){
			hour=h;
		}
		int getminute(int m){
			minute=m;
		}
		int getsecond(int s)
		{
			second=s;
		}
		int display()
		{
			cout<<hour<<":"<<minute<<":"<<second<<endl;
		}
};

假如我要使用类里面的函数时是使用aclock.getminute(12),是用"."来调用成员函数的,那什么时候用"::"来调用成员函数呢(例如std::cout这样的)?请说明下"::"和"."的相同与不同之处,哪里两者能够替换使用,哪里不能,谢谢!

Leo_clip
浏览 3144回答 2
2回答

__YXQ__

::用于定义在类内部声明的函数(在类外写其函数体)和用于区别同名的类外部函数和类内部函数;而‘ . ’是用于调用类的成员(函数,变量)

angie

.用来访问 类 成员,而::使用命名空间中的名字,不是一回事
打开App,查看更多内容
随时随地看视频慕课网APP