class A {
public:
A();
private:
pthread_mutex_t mu;
};
A::A()
{
mu = PTHREAD_MUTEX_INITIALIZER; //cannot compile
}
Run Code Online (Sandbox Code Playgroud)
我不能pthread_mutex_t在类成员函数内初始化吗?
ask*_*ish 11
而不是这个:
A::A()
{
mu = PTHREAD_MUTEX_INITIALIZER; //cannot compile
}
Run Code Online (Sandbox Code Playgroud)
试试这个:
A::A()
{
pthread_mutex_init( &(mu), NULL);
}
Run Code Online (Sandbox Code Playgroud)
PTHREAD_MUTEX_INITIALIZER是一个宏,一个C struct初始值设定项,用于{0,0,0,0,0 {0}}之类的东西,只能在定义点使用.
| 归档时间: |
|
| 查看次数: |
5708 次 |
| 最近记录: |