您的位置:首页 > 大数据 > 物联网

实验一VC++编程环境的灵活应用 【物联网1132-11】

2014-09-17 15:04 323 查看
实验目的:

【复习巩固VC编程环境的使用,以及C++模板设计。】

1.回顾并掌握VC单文件结构程序设计过程。

2.回顾并掌握VC多文件工程设计过程

3.掌握VC程序调试过程。

4.回顾C++模板和模板的程序设计。

实验内容:

1. 设计一个单文件结构程序完成从键盘输入两个数,输出二者的“和”和“积”的结果。要求如下:

1)设计函数来计算“和”和“积”,在主函数中调用,并能考虑重载函数,使整数和小数均能计算。

2)分别使用单步调试和断点调试来调试程序。并多次运行力求熟练调试方法。

2.使用函数的模板来实现上述功能。

3.使用一个类来实现上述功能。要求:

1)使用类模板

2)使用多文件:类的声明有头文件中;类的函数定义一个源文件中,在主程序文件中设计主函数程序,在实例化输出结果。

程序如下显示:

1、

#include <iostream>
using namespace std;

//物联网1132-11

int Jiafa(int a,int b)
{
//	cin>>a>>b;
cout<<"a+b="<<a+b<<endl;
return 0;
}

double Jiafa(double a,int b)
{
//	cin>>a>>b;
cout<<"a+b="<<a+b<<endl;
return 0;
}

double Jiafa(int a,double b)
{
//	cin>>a>>b;
cout<<"a+b="<<a+b<<endl;
return 0;
}

double Jiafa(double a,double b)
{
//	cin>>a>>b;
cout<<"a+b="<<a+b<<endl;
return 0;
}

void main()
{
Jiafa(1,2);
Jiafa(1.1,2);
Jiafa(1,2.1);
Jiafa(1.1,2.1);
}

//“和”的程序如上,“积”的程序相似因此省略。
//物联网1132-11




2、函数模板

#include <iostream>
using namespace std;

template <class A>
void Jiafa(A a,A b)
{
cout<<"这两个数的和是"<<a+b<<endl;
}

//template自动会识别数据的类型所以Jiafa可以当成一个模板使用

void main()
{
int a=1,int b=2;
Jiafa(a,b);
double f=3.1,double t=4.5;
Jiafa(f,t);
}




3、类模板,总程序。

#include <iostream>
using namespace std;

template <typename A,typename B>
class Jiafa
{
public:
Jiafa(A x,B y);
};

template <class A,class B>
Jiafa<A,B>::Jiafa(A x,B y)
{
cout<<"x+y="<<x+y<<endl;
}

void main()
{
Jiafa<int,int>(3,5);
Jiafa<double,int>(3.6,5);
Jiafa<int,double>(3,5.5);
Jiafa<double,double>(3.6,5.5);
}


头文件:
Jiafa.h

#ifndef Jiafa_H_
#define Jiafa_H_
#include <iostream>
using namespace std;

template <typename A,typename B>
class Jiafa
{
public:
Jiafa(A x,B y);
};

template <class A,class B>
Jiafa<A,B>::Jiafa(A x,B y)
{
cout<<"x+y="<<x+y<<endl;
}
#endif


main.cpp

#include “Jiafa.h”
#include <iostream>
using namespace std;

void main()
{
Jiafa<int,int>(3,5);
Jiafa<double,int>(3.6,5);
Jiafa<int,double>(3,5.5);
Jiafa<double,double>(3.6,5.5);
}


运行结果(乘法:略。)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: