boost::python ライブラリの次のテンプレート宣言がわかりません (正確には .../boost_1_51/boost/python/detail/msvc_typeinfo.hpp の 47 行目):
template< typename T > T&(* is_ref_tester1(type<T>) )(type<T>) { return 0; }
どこtype
ですかtemplate <class T> struct type {};
機能的には次のものと同等のようです。
template<typename T>
struct func_type_getter {
typedef T&(*func_type)(type<T>);
};
template< typename T >
typename func_type_getter<T>::func_type is_ref_tester1(type<T>) { return 0; }
これらは同等ですか、それは単なる省略形ですか、それとも誰かが違いを説明できますか?