关于c++语法的问题。


template<typename T = float, template<typename> typename Ty = VECTOR3>
using Default = Dynamics::Constraint::AABB<15, T, Ty>;

namespace Dynamics {
namespace Constraint{

template<unsigned int I, typename T = float, template<typename> typename Ty = VECTOR3>
struct AABB
{
    using ConstraintsType = Constrain;
    ....
}

}
}

template<typename T = float, template<typename> typename Ty = VECTOR3>
struct TEST
{
    inline void Transmission(typename Default::ConstraintsType* p);
    ...
}

template<typename T, template<typename> typename Ty>
inline void TEST::Transmission(typename Default::ConstraintsType* p)
{
//错误在这里。 error C2244: “TEST::Transmission”: 无法将函数定义与现有的声明匹配
    return;
}

23后面少了分号,不知道你实际代码里面加了吗