C 习题与解析(模板-02)

文章作者 100test 发表时间 2007:03:10 16:58:44
来源 100Test.Com百考试题网


题1.分析以下程序的执行结果
#include
template
T abs(T x)
{
return (x>0?x:-x).
}
void main()
{
cout<}
解:
abs()是一个函数模板,它返回参数的绝对值。在调用时自动联编相应的abs()函数。
所以输出为:3,2.6

題2.分析以下程序的执行结果
#include
template
class Sample
{
T n.
public:
Sample(){}
Sample(T i){n=i.}
Sample&.operator (consta Sample&.).
void disp(){cout<<"n="<}.
template
Sample&.Sample::operator (const Sample&.s)
{
static Sample temp.
temp.n=n s.n.
return temp.
}
void main()
{
Samples1(10),s2(20),s3.
s3=s1 s2.
s3.disp().
}
解:
Sample为一个类模板,产生一个模板类Sample,并建立它的三个对象,调用重载运算符 实现s1与s2的加法运算,将结果赋给s3。
所以输出为:n=30



相关文章


C 习题与解析(继承和派生-01)
C 习题与解析(模板-03)
[二级C试题天天练]C语言表达式
[二级C试题天天练]参数传递
C 习题与解析(模板-02)
[二级C试题天天练]逻辑表达式
C 习题与解析(模板-01)
[二级C试题天天练]字符赋值
C 习题与解析(重载-04)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛