问题描述
- C++入门级问题,关于函数模版
-
编一个程序,用同一个函数名对n个数据进行从小到大排序,数据类型可以是整型、单精度型、双精度型。用函数模版实现。
请大家注意这里的n个数据是未知的,个数也是未知的。也许大家之前在谭老师教材里看到这题,但是答案并不准确。希望大神帮忙给个程序,我试了多次都不行,毕竟刚入门。。。
解决方案
这个问题的关键点在比较的时候,被比的两个数的类型是未知的,所以要用父类的方法作比较。要把不同类型的数据定义成那个父类的继承类。
至于数据的个数事先是不知道的,那就定义个个数可变的数组就可以了。
解决方案二:
模板本身就可以支持整数,单精度,双精度等。
至于可变参数个数,这个如果用C++的variadic template可以很容易支持
解决方案三:
其实我想问的不在于函数模版这一块,就在于数组这一块,数组的定义方式还有在什么位置输入输出数组。。。。
解决方案四:
这个我也不太懂。。。好复杂的说。。。。
解决方案五:
这个我也不太懂。。。好复杂的说。。。。
解决方案六:
有些数据类型可以直接比较,有的必须进行运算符重载之后才可以
时间: 2024-12-09 18:16:58