クラス テンプレート パラメーターの 1 つとして、メンバーへのポインターを使用する必要があります。
template <class Base, typename Member, Member Base::*m>
class MemPtrTestUgly
{
...
};
これは次のように使用する必要があります
struct S
{
int t;
}
MembPtrTestUgly <S, int, &S::t> m;
しかし、私はこれを次のように使用したい:
MemPtrTestNice<S, &S::t> m;
メンバー型は、メンバー ポインターから推定されます。クラスはインスタンス化されていないため、関数テンプレートを使用できませんMemPtrTest
(使用される静的関数がいくつかあります)。純粋な C++03 (Boost または TR1 なし) でそれを行う方法はありますか?