Is this
OpenMP 中始终共享指针?
尽管编译器不会抱怨以下代码default(none)
:
#pragma omp parallel for default(none), shared(n)
for ( SInt i = 0; i < n; ++i )
{
f( i, this ); // f is some function.
}
OpenMP 标准定义了数据共享属性规则变量在您的代码中引用。无论如何,根据 C++ 标准草案 (n3242 9.3.2)this
不是一个变量而是一个纯右值表达式(强调我的):
在非静态 (9.3) 成员函数体内,关键字这是
纯右值表达式其值是对象的地址
该函数被调用。成员函数中 this 的类型
X 类是 X*。如果成员函数声明为 const,则其类型
this 是 const X*,如果成员函数被声明为 volatile,则
this 的类型是 volatile X*,并且如果声明了成员函数
const 易失性,它的类型是const 易失性X*。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)