-qroconst
适用的调用
选项 | xlc (编译 C) | xlC (编译 C++) | xlclang(编译 C) | xlclang++(编译 C++) |
---|---|---|---|---|
-qroconst | ✓ | ✓ | ✓ | ✓ |
注: 此表中仅列出典型调用。 对于所有基本调用及其等效特殊调用,您可以参阅 编译器调用的完整列表 。
类别
等效编译指示
xlc/xlC 和其他遗留的调用命令 | xlclang/xlclang + + 调用命令 |
---|---|
#pragma 选项 [no] roconst | 无 |
用途
指定常量值的存储位置。
当 roconst 生效时,常量将放置在只读存储器中。 当 noroconst 生效时,常量将放置在读/写存储器中。
语法
缺省值
-qroconst 适用于除 cc 及其派生版本之外的所有编译器调用。 -qnoroconst 表示 cc 调用及其导数。
-qroconst
使用量
在只读内存中放置常量值可以提高运行时性能,保存存储器并提供共享访问权。 但是,尝试修改只读常量值的代码会生成内存错误。
-qroconst 选项上下文中的 "常量" 是指由
const
限定的变量,包括 const
限定的字符,整数,浮点数,枚举,结构,并集和数组。 以下构造不受此选项影响:- 使用
volatile
限定的变量以及包含volatile
变量的聚集 (例如结构或并集) - 包含指针成员的指针和复杂聚集
- 具有块作用域的自动和静态类型
- 未初始化的类型
- 具有
const
限定的所有成员的常规结构 - 是地址的初始化方法,或强制转换为非地址值的初始化方法
-qroconst 选项不表示 -qro 选项。 如果 要 指定字符串字面值 (-qro) 和常量值 (-qroconst) 的存储特征,那么必须同时指定这两个选项。
预定义的宏
无。