嗨,我在遗留代码中磕磕绊绊,我遇到了一个奇怪的方法定义/声明。我对它的作用有一个有教育的猜测,但我还不能100%确定。此方法声明/定义是什么意思? (与传递数组有关?)
声明:
const SomeEnumeratedId (&SomeMethod() const)[SOME_CONSTANT_VALUE];
定义
const SomeEnumeratedId (&SomeClass::SomeMethod() const)[SOME_CONSTANT_VALUE]
{
return someMemberArray;
}
我最好的猜测是,它是传递一个参考someMemberArray,它是保证它的大小SOME_CONSTANT_VALUE的,但我从来没有见过方法声明出现后的[]符号,并且有很多圆括号。
任何帮助非常感谢。
那么方法告诉调用函数后,[SOME_CONSTANT_VALUE]返回的引用是否引用了该长度的数组?这是最让我困惑的部分,因为我从未在函数声明中看到过这一部分。我只看到数组作为引用或指针传递,最后没有。 – Michael 2011-01-14 16:14:25