加入收藏
设为首页
联系我们
用户名: 密码:
当前位置:$nav$ 站内搜索:

计算机等级考试二级C++习题与解析:模板

资料类别 计算机等级考试二级C++习题与解析:模板
 资料格式 WORD格式
 资料来源 考试吧 (Exam8.com)
 资料下载: 点击这里下载 

内容预览:

01.分析以下程序的执行结果 
#include<iostream.h> 
template <class T> 
T max(T x,T y) 

return (x>y?x:y); 

void main() 

cout<<max(2,5)<<","<<max(3.5,2.8)<<endl; 

解: 
本题说明函数模板的使用方法。max()函数是一个函数模板,它返回两个参数中的较大者。在调用时自动联编相应的max()函数。所以输出为:5,3.5 
注意:T为类型形式参数,可包含基本数据类型,也可以包含类类型,不能是普通的数据变量。 

02.分析以下程序的执行结果 
#include<iostream.h> 
template <class T> 
class Sample 

T n; 
public: 
Sample(T i){n=i;} 
void operator++(); 
void disp(){cout<<"n="<<n<<endl;} 
}; 
template <class T> 
void Sample<T>::operator++() 

n+=1; // 不能用n++;因为double型不能用++ 

void main() 

Sample<char> s(’a’); 
s++; 
s.disp(); 

解: 
本题说明类模板的使用方法。Sample是一个类模板,由它产生模板类Sample<char>,通过构造函数给n赋初值,通过重载++运算符使n增1,这里n由’a’增1变成’b’。 
所以输出为:n=b

 发表评论:    匿名发表                 查看评论

 


地址:沈阳市大东区小北关街31号604室
电话:024-28510618   024-82890666
网址:  邮箱:tian_yu@sina.com
版权归北大创想远程教育网所有 违者必究