首页 > 其他分享 >CPP0037利用类模板解决绝对值功能

CPP0037利用类模板解决绝对值功能

时间:2023-05-15 18:56:19浏览次数:39  
标签:const cout void CPP0037 绝对值 模板 Absolute

请使用模板参数设计实现绝对值模板类Absolute,Absolute类功能要求成员函数getValue(void)const计算类数据的绝对值,类数据类型应能适应整型、浮点型、双精度型等各种类型,绝对值类型与类数据一样。

#include <iostream>
using namespace std;

/*请在这里填写答案*/

template<class T>
class Absolute
{private:
T x;
public:
T getValue(void)const;
Absolute(T x_=0){x=x_;};
};
template<class T>
T Absolute<T>::getValue()const
{
if(x<0)
return 0-x;
else if(x>=0)
return x;

}
//template<class T>

int main(void){
char c='\0';
int i=0;
long l=0;
scanf("%c%d%ld",&c,&i,&l);
float f=1.1;
double d=2.2;
scanf("%f%lf",&f,&d);
Absolute<char> dc(c);
cout<<dc.getValue()<<endl;
Absolute<int> di(i);
cout<<di.getValue()<<endl;
Absolute<long> dl(l);
cout<<dl.getValue()<<endl;
Absolute<float> df(f);
cout<<df.getValue()<<endl;
Absolute<double> dd(d);
cout<<dd.getValue()<<endl;
return 0;
}

标签:const,cout,void,CPP0037,绝对值,模板,Absolute
From: https://www.cnblogs.com/qian-heng/p/17402802.html

相关文章

  • 请使用模板参数设计实现双倍功能函数,函数功能要求实现返回值为输入参数的两倍,函数参数
    请使用模板参数设计实现双倍功能函数,函数功能要求实现返回值为输入参数的两倍,函数参数应能适应整型、浮点型、双精度型等各种类型,返回值类型与参数一样。裁判测试程序样例: #include<iostream>usingnamespacestd;/*请在这里填写答案*/intmain(void){charc='\0';......
  • 实习记录模板
    计划删减代码,把它变成自己的,准备答辩学习前端知识angular框架,html语法扎实的学,css,JavaScript学习后端框架,Java语言学扎实点知道接口怎么回事,尝试或明白一个接口怎么写,接口调试是怎么实现的解决配置文件中resources中的几千个报错,不解决,无意义要搞明白数据库中的字段......
  • 聊一聊模板方法模式
    统一抽取,制定规范;一、概述模板方法模式,又叫模板模式,属于23种设计模式中的行为型模式。在抽象类中公开定义了执行的方法,子类可以按需重写其方法,但是要以抽象类中定义的方式调用方法。总结起来就是:定义一个操作的算法结构,而将一些步骤延迟到子类中。在不改变算法结构的情况下,子......
  • 模板
    6-2数组排序输出(函数模板)作者 何振峰单位 福州大学对于输入的每一批数,按从小到大排序后输出。一行输入为一批数,第一个输入为数据类型(1表示整数,2表示字符型数,3表示有一位小数的浮点数,4表示字符串,0表示输入结束),第二个输入为该批数的数量size(0<size<=10),接下......
  • Labview OOP Plug-in框架模板资料,适合研究学习(涉及到设计模式的命令模式和工厂模式)
    LabviewOOPPlug-in框架模板资料,适合研究学习(涉及到设计模式的命令模式和工厂模式)。文件包含模板vipc安装包一份,操作手册一份。ID:1686613644553790......
  • 整车性能目标书,Ford电动汽车 整车性能目标模板,共26页,pdf版本,包含13个性能模块指标条目
    整车性能目标书,Ford电动汽车整车性能目标模板,共26页,pdf版本,包含13个性能模块指标条目,可作为性能集成开发参考YID:3219641188247166......
  • 23-5-14--二分查找--二分查找模板
    1#include<stdio.h>2//#include<iostream>3#include<algorithm>45usingnamespacestd;67structarray{8longlongindex;9longlongnum;10};1112boolcmp(arrayx,arrayy)13{14returnx.num<y.num;......
  • 标准模板13
    #include<algorithm>#include<iterator>#include<vector>#include<iostream>usingnamespacestd;template<classInputIt,classOutputIt>voidmySort(InputItfirst,InputItlast,OutputItresult){ vector<typenameiterator_traits<I......
  • opencv模板匹配测试
    opencv模板匹配 importcv2#加载标准图像template=cv2.imread('template.jpg')#预处理输入图像gray=cv2.cvtColor(template,cv2.COLOR_BGR2GRAY)gray=cv2.GaussianBlur(gray,(5,5),0)#创建背景减除器background=cv2.subtract(te......
  • 利用函数模板解决双倍功能
    请使用模板参数设计实现双倍功能函数,函数功能要求实现返回值为输入参数的两倍,函数参数应能适应整型、浮点型、双精度型等各种类型,返回值类型与参数一样。#include<iostream>usingnamespacestd;/*请在这里填写答案*/template<typenameT>TDouble(Tx){return2*x;}in......