为什么C ++具有::运算符,而不是.为此目的使用运算符?Java没有单独的运算符,并且运行良好。C ++和Java之间有什么区别,这意味着C ++需要单独的运算符才能进行解析?
我唯一的猜测是::出于优先级原因而需要这样做,但是我不知道为什么它需要具有比更高的优先级.。我能想到的唯一情况是
a.b::c;
将被解析为
a.(b::c);
,但我想不出任何这样的语法仍然合法的情况。
也许只是“他们做不同的事情,所以他们看起来也不一样”的情况。但这并不能解释为什么::优先级高于.。
呼唤远方
相关分类