g ++中的__restrict和带有数组语法的MSVC

时间:2014-09-19 08:04:20

标签: c++ restrict restrict-qualifier

我正在更新性能关键库以使用restrict,正如使用g ++和MSVC在C ++ 11中使用关键字__restrict实现的那样。

有许多例程和函数看起来像:

void f(float a[],float b[]);

在上面的例子中,f是一个应该限制其参数的例程。不幸的是,据我所知,这在维护语法时是不可能的。现在,显然可以使用指针重写:

void f(float*__restrict a,float*__restrict b);

这里丢失的是ab是数组的语义事实(我更喜欢使用指针符号表示单值指针,数组符号表示数组指针)。描述性的参数名称(上面省略)有帮助,但只有这么多。

我想确认这些编译器目前无法使用数组语法声明受限变量。

0 个答案:

没有答案