我如何有一个函数可以接受任意数量的参数,然后相应地检查其数据类型? 我明白,在Java它的对象..然后做instanceof来检查数据类型,但在C + +?C++函数对象参数
基本类似转换到这个C++
public int Testing(String sql, Object...arguments) throws SQLException{
PreparedStatement ps = con.prepareStatement(sql);
for(int i=0; i< arguments.length; i++){
if (arguments[i] instanceof String)
ps.setString(i+1, arguments[i].toString());
else if (arguments[i] instanceof Integer)
ps.setInt(i+1, Integer.parseInt(arguments[i].toString()));
}
return ps.executeUpdate();
}
[C++等效的instanceof]的可能的重复(http://stackoverflow.com/questions/500493/c-equivalent-of-instanceof) –
我不太清楚你到底想要什么,特别是因为Java的'instanceof ''不* *会带来可变数量的参数,因此类比就会失效。 –
@Konrad Rudolph像我会实际使用for循环来检查每个参数的数据类型 – Tyra