我很困惑......
因此我有一段代码;
class logger
{
public:
std::mutex mut;
unique_lock< std::mutex> lk(mut);
// ... snip ...
}
“unique_lock&lt; std :: mutex&gt; lk(mut)”行无法使用此错误进行编译;
** g ++ -pthread --std = c ++ 11 main.cxx main.cxx:42:31:错误:mut不是类型
unique_lock&LT;的std ::互斥&GT; LK(MUT); **
但是,如果我将其更改为...(注意括号初始化程序是唯一的区别)
unique_lock< std::mutex> lk(mut);
它编译得很好。
我还有其他代码使用非支撑初始化程序初始化,它可以正常工作/编译。为什么会这样,也许我累了:)
干杯
答案 0 :(得分:0)
类记录器 {
公共:
std :: mutex mut; unique_lock&LT;的std ::互斥&GT; LK {MUT};
}