c ++ 11 forwarddeclare thread,mutex,chrono

Avi*_*hol 2 stl forward-declaration c++11

我知道我们应该更倾向于在头文件中声明所有内容,如果可能的话,那么STL呢?

我发现iostreamiosfwd.

如果我想在我的班级中声明一个互斥锁,如下所示:

class MyClass
{

.....
private:
    std::mutex mMutex;
};    
Run Code Online (Sandbox Code Playgroud)

我应该在我的类标题中包含互斥标头吗?或者有没有办法向前推进它,例如:

class std::mutex;
class MyClass{...};
Run Code Online (Sandbox Code Playgroud)

对于计时器线程也是如此.

对此的任何想法都是适用的.谢谢!

How*_*ant 7

除了指定的(例如<iosfwd>)之外,没有可移植的方式来转发声明std :: objects .并且没有转发标头mutex,threadchrono.