【发布时间】:2014-10-27 07:36:00
【问题描述】:
我正在尝试理解一个类,这是我们必须完成的作业的一部分,但我不理解某些语法:
void sleep()
{
Thread::yield();
} // implicit unlock()
什么是 Thread::yield();意思是?那是哪个线程?此 Thread 对象的代码中没有声明。什么是 :: ?
【问题讨论】:
-
需要更多上下文...
Thread是什么?众多 C++ 线程库之一中的某个类?你自己的本土班级? -
在此上下文中,
X::Y()表示调用类型为X的名为Y的静态方法。所以下一步就是去Y的定义看看它做了什么。 -
@Jon 也可以是封装在 Thread 命名空间中的全局方法
-
或者在派生类成员函数中显式调用基类成员函数。关键是因为没有足够的上下文,所以无法分辨。
-
我觉得标题问“在这种情况下”很有趣,而且没有给出任何上下文。