这其实取决于你要完成的功能,如果是比较大小的一个模版函数,那么传入的类型就必须支持比较操作,比如:template bool first_ge_second(const x& x1, const x& x2){ return (x1 > x2);}如果x1 > x2这个函数返回真,很显然,这个X(模版参数)必须支持大于符号的操作,传统的类型肯定可以(比如int, float),但如果是自定义的类,那么必须重载>操作符,否则代码无法编译通过。