【发布时间】:2015-09-09 07:22:24
【问题描述】:
const C++ 中的变量必须初始化意味着uninitialized const variable 是不可能的,这是一个编译器错误。但是为什么在 C 语言中也不一样呢?
考虑以下编译好的 C 程序:
#include <stdio.h>
int main()
{
const int a;
}
允许uninitialized const的原因是什么?如果 C 也遵循与 C++ 相同的规则,那不是很好吗?是不是因为性能问题,每次调用函数都需要初始化局部 const 变量,初始化需要时间?
【问题讨论】:
-
版主说明:请使用 cmets 请求澄清/讨论所提出的问题。谢谢。
标签: c initialization constants