下列程序将x、y和z按从小到大的顺序排列,横线处应添加语句( )。 template<class T> void fun (____) {T a; if(x>y) {a=x;x=y;y=a;} if(y

admin2019-02-22  36

问题 下列程序将x、y和z按从小到大的顺序排列,横线处应添加语句(    )。
    template<class T>
    void fun (____)
    {T a;
    if(x>y)
    {a=x;x=y;y=a;}
    if(y>z)
    {a=y;y=z;z=a;}
    if(x>y)
    {a=x;x=y;y=a;}
    }

选项 A、T x,T y,T z
B、T x;y;z
C、T&x,T&y,T&z
D、T&x,&y,&z

答案C

解析 函数fun的类型为void没有任何返回值,函数中变量的改变,即参数的改变应该影响实参。应该是地址传递方式,即把引用型作为函数形参。类T是类的抽象,可以利用模板建立各种数据类型的类。所以补全函数的定义为“T&x,T&y,T&z”。
转载请注明原文地址:https://kaotiyun.com/show/IcAp777K
0

最新回复(0)