template <typename TValue>
class el_traits
{
public:
// typename TValue;
typedef TValue TValueType;
typedef TValue& TReferenceType;
};
template <typename TValue, typename TTraits = el_traits<TValue> >
class TProperty
{
public: // C++编译器不确定这里是不是类型,所以需要显示指定
void Get(typename const TTraits::TValueType val);
void Set(typename TTraits::TReferenceType val);
};