问题
单项选择题
下列程序的输出结果是( )。 #include<iostream> using namespace std; template<typename T> T fun(T a,T b){return(a>=b)a:b;} void main() { cout<<fun(3,6)<<','<<fun(3.14F,6.28F)<<end1; }
A.6,3.14
B.3,6.28
C.3,3.14
D.6,6.28
答案
参考答案:D
解析: “:”为条件运算符,(a>=b)a:b是当a大于b时取a,否则取b。所以第一个fun(3,6)调用中,6大于3,所以输出6,同理,第二个fun(3.14F,6.28F)调用中输出6.28。