YTU 2631: B1 能存各种类型数据的Store类
2631: B1 能存各种类型数据的Store类
时间限制: 1 Sec 内存限制: 128 MB
提交: 245 解决: 177
题目描述
输入
输出
样例输入
240 56.7183
样例输出
240
56.72
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;
template<class T>
class Store
{
private:
T item; //用于存放任意类型的数据
int haveValue; //用于标记item是否为空,0表示为空,1表示有数据
public:
Store(); //默认构造构造函数
T getElem(); //提取数据,返回item的值
void putElem(T x);//存入数据
};
template<class T>
Store<T>::Store(void):haveValue(0) {};
template<class T> //提取数据函数的实现,返回item中的数据
T Store<T>::getElem(void)
{
if (haveValue==0) //如果试图提取未初始化的数据,则终止程序
{
cout<<"NO item present!\n";
exit(1);
}
return item;
}
template<class T>//存入数据的实现
void Store<T>::putElem(T x)
{
haveValue=1;
item = x;
}
int main()
{
Store<int> si;
Store<double> sd;
int i;
double d;
cin>>i>>d;
si.putElem(i);
sd.putElem(d);
cout <<setiosflags(ios::fixed)<<setprecision(2);
cout<<si.getElem()<<endl;
cout<<sd.getElem()<<endl;
return 0;
}
#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;
template<class T>
class Store
{
private:
T item; //用于存放任意类型的数据
int haveValue; //用于标记item是否为空,0表示为空,1表示有数据
public:
Store(); //默认构造构造函数
T getElem(); //提取数据,返回item的值
void putElem(T x);//存入数据
};
template<class T>
Store<T>::Store(void):haveValue(0) {};
template<class T> //提取数据函数的实现,返回item中的数据
T Store<T>::getElem(void)
{
if (haveValue==0) //如果试图提取未初始化的数据,则终止程序
{
cout<<"NO item present!\n";
exit(1);
}
return item;
}
template<class T>//存入数据的实现
void Store<T>::putElem(T x)
{
haveValue=1;
item = x;
}
int main()
{
Store<int> si;
Store<double> sd;
int i;
double d;
cin>>i>>d;
si.putElem(i);
sd.putElem(d);
cout <<setiosflags(ios::fixed)<<setprecision(2);
cout<<si.getElem()<<endl;
cout<<sd.getElem()<<endl;
return 0;
}
YTU 2631: B1 能存各种类型数据的Store类的更多相关文章
- java基础类型数据与String类包装类之间的转换与理解
数据类型转换一般分为三种: 在java中整型,实型,字符型视为简单数据类型,这些数据类型由低到高分别为:(byte,short,char--int-long-float-double) 简单数据类型之 ...
- 根据dateFormatter创建NSDate类型数据
根据dateFormatter 2000-01-01 创建NSDate类型数据 NSDateFormatter *dateFormatter = [NSDate shareDateFormatter] ...
- .SQL Server中 image类型数据的比较
原文:.SQL Server中 image类型数据的比较 在SQL Server中如果你对text.ntext或者image数据类型的数据进行比较.将会提示:不能比较或排序 text.ntext 和 ...
- Cassandra存储time series类型数据时的内部数据结构?
因为我一直想用Cassandra来存储我们的数字电表中的数据,按照之前的文章(getting-started-time-series-data-modeling)的介绍,Cassandra真的 ...
- (工具类)double类型数据运算
package com.flf.util;import java.math.BigDecimal;/** * double类型数据运算 * @author Yancy 2016-12-14 * */p ...
- MySQL varchar类型数据转tinyint类型
在mysql数据库中性别字段以前存的是'男'和'女',使用varchar类型存储的,但是在我mongo库中这个字段使用的是'1'和'0'存储的,在两个库之间的数据转换就很不方便,于是想要统一存储类型, ...
- PHP-----JSOM类型数据
JS里的数据类型 JS里的一种数据类型,JSOM类型数据 JSOM这种数据类型,在使用JS和jquery时经常使用的到,比较重要.用起来比较简单. <title>无标题文档</tit ...
- 整型变量修饰符,char类型数据存储原理,字节数,
//------------------整型变量修饰符 修饰符(int short long longlong signed unsigned)所有修饰符都是用来修整形 int 4short %hd ...
- Java的各类型数据在内存中分配情况详解
1. 有这样一种说法,如今争锋于IT战场的两大势力,MS一族偏重于底层实现,Java一族偏重于系统架构.说法根据无从考证,但从两大势力各自的社区力量和图书市场已有佳作不难看出,此说法不虚,但 ...
随机推荐
- struct 和class 区别
最开始,就让我们来讨论一下一个最最基本,也最最容易被人忽视掉的问题——C++中的struct和class有什么区别?如果谈到C中的struct和C++中的class的区别,你应该会告诉我很多.但我现在 ...
- [模板] Splay
欠了好久的Splay,以后就它了. 默写真不容易,过几天估计就忘了.. 整个Splay真的精妙,不拖泥带水那种.. 前驱后继之所以不能用rk转到根,是因为这个数不一定存在.. kth中<=老忘记 ...
- 零基础入门学习Python(28)--文件
知识点 Python中使用open(...)这个内置函数来打开文件,并返回文件对象 open()函数参数说明: open(file, mode='r', buffering=-1, encoding= ...
- dbeaver能执行存储过程,db2命令编辑器里面不行
- Mysql:sql语句
练习的表可以在博客的文件中下载 基础知识: 1.数据库的连接 mysql -u -p -h -u 用户名 -p 密码 -h host主机 2:库级知识 2.1 显示数据库: show database ...
- win7 x64安装glpk
下载glpk,下载地址:http://ftp.gnu.org/gnu/glpk/
- python爬虫学习,使用requests库来实现模拟登录4399小游戏网站。
1.首先分析请求,打开4399网站. 右键检查元素或者F12打开开发者工具.然后找到network选项, 这里最好勾选perserve log 选项,用来保存请求日志.这时我们来先用我们的账号密码登陆 ...
- sql server 备份计划
SSMS 1.管理 2.维护计划 3.维护计划向导 或者 1. server 代理 2. 作业 3. 新建作业 备份计划时间尽量选在闲时, 例如午夜
- N分之一 竖式除法模拟
N分之一 Description Alice越来越痴迷于数学问题了.一天,爸爸出了个数学题想难倒她,让她求1 / n. 可怜的Alice只有一岁零九个月,回答不上来 ~~~~(>_<)~~ ...
- SPI与I2C
spi的最快传输速率是20mhz,i2c的传输速率是400khz. 版权声明:本文为博主原创文章,未经博主允许不得转载.