std::tr1::_Bind<void (*()(std::tr1::reference_wrapper<int>))(int&)>
私はstd::tr1::reference_wrapper<int>
を理解しています。この全体が、void
を返す何らかの種類の関数ポインタであり、引数としてint&
をとります。しかし、最初に*()に従うことはできません。コードの一部がgdbセッションから切り取られてしまいました。このテンプレートのタイプは何ですか?
また、tr1 ::関数の型は何ですか? voidを返し引数を取らない関数もありますか?
0x00000001000021a1 in std::tr1::function<void()()>::operator() (this=0x7fff5fbffb98) at functional_iterate.h:865
しかし、その後、次のエラーである:
template <typename T>
void f()
{
cout << "general\n";
}
template<>
void f<void()()>() // this is error
{
cout << "specific\n";
}
スターは、そのための2つの括弧の間にあるべきではないでしょうか。 – 6502
@ 6502:いいえ、星は関数の* return type *に属しています(それ自体は関数であり、*関数*は星が対応するかっこ内にあります)。 – celtschk
@ Fanatic23:私はすでにそれを書いている段階にありました。ちょうど時間がかかりました。 – celtschk