常量地址空间(Constant Address Space)
constant修饰符用来表示在设备内存池上分配的只读内存. 在程序域(Program Scope)中声明的变量必须是constant型的,而且在声明的位置被初始化. 用于声明constant类型变量的值必须是在编译期就可以获取的. 在程序域声明的constant变量其生命期与程序相同, 而且其值在任意的函数调用中都保持不变.
代码实例:
constant float samples[] = { 1.0f, 2.0f, 3.0f, 4.0f };
指向constant变量的指针或者引用是可以作为函数的参数传递的.
任意对constant变量的写操作将引发编译错误. 声明constant变量的时候如果没有初始化, 也将引发编译错误.