restrict
Microsoft 固有の仕様 →
ポインター型を返し、関数が他のポインターでエイリアス化されないオブジェクトを返すことをコンパイラに伝える関数宣言または関数定義に適用されます。
__declspec(restrict) return_type f();
解説
コンパイラは、__declspec(restrict) を反映させます。 たとえば、CRT malloc 関数は __declspec(restrict) で修飾されるため、malloc でメモリ位置に初期化されたポインターも暗黙でエイリアスは設定されません。
コンパイラは、ポインターが実際にはエイリアス化されていないことを確認しません。 restrict __declspec 修飾子で示したポインターにエイリアスがないかどうか確認するのは開発者の責任です。
変数の同様のセマンティクスについては、「__restrict」を参照してください。
使用例
restrict の使用例は、「noalias」を参照してください。
C++ AMP の一部である restrict キーワードの詳細については、「制限の句 (C++ AMP)」を参照してください。
END Microsoft 固有の仕様