0

このコードで未定義の参照エラーが発生するのはなぜですか:

int foo() { return 5; }

int main()
{
   int bar(int() = foo);
   bar();
}

int bar(int (&x)())
{
    return x();
}

しかし、このコードを使用すると、正常にコンパイルされます。

void baz(int (&)()) {}
int foo() { return 5;}

int main()
{
   baz(foo);
}
4

1 に答える 1

1
undefined reference to `bar(int (*)())'

そして、あなたが持っているものは次のとおりです。

int bar(int (&x)())
于 2013-05-26T19:10:40.783 に答える