实验一 VC++编程环境的灵活应用
一.实验目的
复习巩固VC编程环境的使用,以及C++模板设计。
1.回顾并掌握VC单文件结构程序设计过程。
2.回顾并掌握VC多文件工程设计过程
3.掌握VC程序调试过程。
4.回顾C++模板和模板的程序设计。
二.实验内容
1. 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:
1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。
2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。
2.使用函数的模板来实现上述功能。
3.使用一个类来实现上述功能。要求:
1)使用类模板
2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。
以下是程序和结果:
<span style="font-size:14px;">#include<iostream>
using namespace std;
int add(int x,int y)
{
return x+y;
}
double add(int x,double y)
{
return x+y;
}
double add(double x,int y)
{
return x+y;
}
double add(double x,double y)
{
return x+y;
}
int main()
{
double m,n;
cin>>m>>n;
cout<<"x+y="<<add(m,n)<<endl;
return 0;
} //物联1132-27</span>
结果如下:
函数模版:
#include<iostream>
using namespace std;
template<class T>
T add(T a,T b)
{
return a*b;
}
int main()
{
double m,n;
cin>>m>>n;
cout<<"a乘以b等于 "<<add(m,n)<<endl;
return 0;
}
结果:
函数重载无需特别声明,只要所定义的函数与已经定义的同名函数形参形式不完全相同,C++语言编译器就认为是重载函数。需要注意以下两点:
1.不可以定义两个具有相同名称、相同参数类型和相同参数个数,只是函数返回值不同的函数。例如:
int func(int a);
int func(int a);
2.如果某个函数参数有默认值,必须保证其参数默认后调用形势不与其他函数混淆。例如:
int f(int a,float b);
int f(int a,float b,int c=0);
对于函数模版和类函数,我不太懂,也不太理解这些,就不做了。