第 1 页:选择题 |
第 3 页:程序改错题 |
第 4 页:简单应用题 |
第 5 页:综合应用题 |
二、程序改错题
41使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使得程序输出:
Hello
test
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在
//******error******的下面。
试题程序:
#include
//********error********
template
voidfun(Tt)
{
std::cout<<"test"<
}
//********error********
template
voidfun(boolt)
{
std::cout<<(t?"Hell0":"Hi")<
}
intmain()
{
//********error********
boolflag=TRUE;
fun(flag);
fun((int)flag);
return0;
}
参考解析:
(1)应改为“template”。
(2)删除“template(bool)”。
(3)应改为“boolflag=true;”。
【解析】C++中的模板类格式为template,所以第1处的语句“template”应修改为“template(classT>”。在第2处的“voidfun(boolt)”函数中,t变量为布尔型变量,是C++中的基础变量,不是模板变量,没有使用到模板类,所以删除第2处的模板类型定义语句。第3处的“boolflag=TRUE;”是声明布尔型变量flag,并将其值赋为逻辑真。而TRUE并不是合法值,C++中区分大小写,所以逻辑真值应为true,即“boolflag=true;”。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |