该选项用于确定预处理程序所进行的更改。例如,以下程序 foo.cc 会生成A.2.13.1 示例中所示的输出。
#if __cplusplus < 199711L
int power(int, int);
#else
template <> int power(int, int);
#endif
int main () {
int x;
x=power(2, 10);
}
.
|
example% CC -E foo.cc
#4 "foo.cc"
template < > int power (int, int);
int main () {
int x;
x = power (2, 10);
}
|
如果代码包含采用“独立定义”模型的模板,此选项的输出可能不能用作 C++ 编译的输入。
–P