只要与同事在工作中交谈如何声明一个变量。 对我来说,我已经决定了我喜欢哪种风格,但也许我错了。函数和声明一个局部变量
“C”风格 - 函数开始处的所有变量。 如果您想知道变量的数据类型,只需查看函数的开头即可。
bool Foo()
{
PARAM* pParam = NULL;
bool rc;
while (true)
{
rc = GetParam(pParam);
... do something with pParam
}
}
“C++” 的风格 - 变量声明为本地越好。
bool Foo()
{
while (true)
{
PARAM* pParam = NULL;
bool rc = GetParam(pParam);
... do something with pParam
}
}
你更喜欢什么?
更新 问题是关于POD变量。
您的示例中的“C风格”实际上是“C89风格”,因为C99允许在块的中间声明变量,与C++相同。这也不是一种真正的风格,而是一种语言要求。 – 2010-07-06 19:50:59
“C”风格也是尽可能在本地声明变量。 C89要求它们在块的开头(不一定是函数的开始); C99和C++允许声明它们的初始化位置。 – 2010-07-06 19:53:55
@Pavel感谢您指出 – dimba 2010-07-06 19:56:40