什么意思::在函数调用的前面

geo*_*a_e 1 c++

我有这个代码:

1. bool MyClass::open() {
2.   int fd = ::open("file.txt",flags);
3. }
Run Code Online (Sandbox Code Playgroud)

调用open之前第2行的"::"是否意味着什么?

jua*_*nza 11

它意味着" open来自全局命名空间".这是一种消除歧义的方法,MyClass::open如果你在open没有领导的情况下说,这个名字就会被拿起来::.