C++ 如何强制转换模板参数

C++ 如何强制转换模板参数,c++,c++11,templates,casting,static,C++,C++11,Templates,Casting,Static,我试图将Type2的参数转换为Type。它不是编译 具体来说,我试图比较两种不同类型的项,并希望将第二个元素y转换为(Type) 这是C语言++ template <class Type, Type2> Type larger(Type x, Type2 static_cast<Type>(y)); 模板 较大类型(x型、2型静态_型(y)); E:Clarity我认为您希望在函数内部进行静态转换。例如:

我试图将Type2的参数转换为Type。它不是编译

具体来说,我试图比较两种不同类型的项,并希望将第二个元素y转换为(Type)

这是C语言++

template <class Type, Type2>                             
Type larger(Type x, Type2 static_cast<Type>(y)); 
模板
较大类型(x型、2型静态_型(y));

E:Clarity

我认为您希望在函数内部进行静态转换。例如:

    template <class Type, Type2>  
    Type larger(Type x, Type2 y) {
        Type ycasted = static_cast<Type>(y);
        //compare x and ycasted
    }
模板
大字体(x型、y型){
ycasted型=静态铸件(y);
//比较x和ycasted
}

然而,我可能误解了你的问题。希望这有帮助。

这是C++吗?请使用编程语言标记您的帖子。欢迎使用堆栈溢出。请编辑您的问题,以包含更多详细信息,包括您的语言和一些示例代码。现在可以了,谢谢您是要声明
更大的
,还是要实现它?您在实现中强制转换,而不是在原型中。您只显示的代码类似于C++。谢谢你的确认。