C++ 在c+中关闭静态类型检查+;对于特定的方法调用

C++ 在c+中关闭静态类型检查+;对于特定的方法调用,c++,C++,我正在使用类模板。我有一个方法可以检查它的参数类型是基本类型(如“int”)还是对象实例(使用typeid)。如果它是一个对象,我想在该实例上调用一个方法。我的问题是,当类型变量绑定到“int”时,编译器会抱怨 是否有办法强制在运行时执行检查 我正在OSX Lion上使用g++ 提前感谢。您需要使用模板专门化来实现这一点,而不是typeid。我相信SFINAE可以帮助您更快地为所有基本类型编写一个。不,没有。代码和您试图解决的实际问题,请不要使用您认为最好的无效解决方案。看起来您遇到了一个很糟糕

我正在使用类模板。我有一个方法可以检查它的参数类型是基本类型(如“int”)还是对象实例(使用typeid)。如果它是一个对象,我想在该实例上调用一个方法。我的问题是,当类型变量绑定到“int”时,编译器会抱怨

是否有办法强制在运行时执行检查

我正在OSX Lion上使用g++


提前感谢。

您需要使用模板专门化来实现这一点,而不是
typeid
。我相信SFINAE可以帮助您更快地为所有基本类型编写一个。

不,没有。代码和您试图解决的实际问题,请不要使用您认为最好的无效解决方案。看起来您遇到了一个很糟糕的问题。您能告诉我们代码是什么样子的吗?谢谢,我会调查SFINAE。我不确定我是否了解SFINAE的所有细节,但我确实通过它解决了我的问题。有趣的成语。再次感谢。