数据结构———重载与模板(C++)

相关信息


/*
 *
 * @subject 数据结构
 * @author 信管1142班  201411671210  JJ lai
 * 
 * @program 模板与重载
 * 
 */

实验一:

/*
要求如下:
1.设计函数来计算“和”和“积”,在主函数中调用,
2.能考虑重载函数,使整数和小数均能计算。
*/

#include<iostream>
using std::cout;
using std::endl;

int sum(int variable_1, int variable_2)
{
    return variable_1 + variable_2;
}

double sum(double variable_1, double variable_2)
{
    return variable_1 + variable_2;
}

int product(int variable_1, int variable_2)
{
    return variable_1 * variable_2;
}

double product(double variable_1, double variable_2)
{
    return variable_1 * variable_2;
}

int main()
{
    cout << sum(200, 320) << endl;
    cout << sum(2.5, 2.7) << endl;
    cout << product(260, 2) << endl;
    cout << product(9.20, 100.0) << endl;

}

实验二:

/*
要求如下:
1.设计函数来计算“和”和“积”,在主函数中调用,
2.使用模板实现。
*/

#include<iostream>
using std::cout;
using std::endl;

template<typename dataType>
dataType sum(const dataType &variable_1, const dataType &variable_2)
{
    return variable_1 + variable_2;
}

template<typename dataType>
dataType product(const dataType  &variable_1, const dataType &variable_2)
{
    return variable_1 * variable_2;
}


int main()
{
    cout << sum(200, 320) << endl;
    cout << sum(2.5, 2.7) << endl;
    cout << product(260, 2) << endl;
    cout << product(9.20, 100.0) << endl;

}

实验三:

/*
要求如下:
1.设计函数来计算“和”和“积”,在主函数中调用,
2.使用类模板实现。
3.使用多文件。
*/

//moban.h
template<typename dataType>
class Plate {
public:
    dataType sum(const dataType &variable_1, const dataType &variable_2);
    dataType product(const dataType  &variable_1, const dataType &variable_2);
private:
    dataType variable1_;
    dataType variable2_;
};

template<typename dataType>
dataType Plate<dataType>::sum(const dataType &variable_1, const dataType &variable_2)
{
    return variable_1 + variable_2;
}

template<typename dataType>
dataType Plate<dataType>::product(const dataType  &variable_1, const dataType &variable_2)
{
    return variable_1 * variable_2;
}


//main.cpp
#include<iostream>
#include"标头.h"
using std::cout;
using std::endl;

int main()
{
    Plate<int>I_plate;
    Plate<double>D_plate;
    cout << I_plate.sum(200, 320) << endl; 
    cout << I_plate.sum(2.5, 2.7) << endl; 
    cout << D_plate.product(260, 2) << endl;
    cout << D_plate.product(9.20, 100.0) << endl; 

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-10-19 23:26  kelion  阅读(235)  评论(0编辑  收藏  举报