C++ //练习 14.12 你在7.5.1节的练习7.40(第261页)中曾经选择并编写了一个类,为它定义一个输入运算符并确保该运算符可以处理输入错误。

C++ Primer(第5版) 练习 14.12

练习 14.12 你在7.5.1节的练习7.40(第261页)中曾经选择并编写了一个类,为它定义一个输入运算符并确保该运算符可以处理输入错误。

环境:Linux Ubuntu(云服务器)
工具:vim
代码块
cpp 复制代码
class Date{
	public:
	Date();
	Date(size_t y, size_t m, size_t d): year(y), month(m), day(d) {}
	friend ostream &operator<<(ostream &, Date &);
	friend istream &operator>>(istream &, Date &);

	private:
	size_t year;
	size_t month;
	size_t day;
};

ostream &operator<< (ostream &output, Date &d){
	output<<d.year<<"-"<<d.month<<"-"<<d.day<<endl;
	return output;
}

istream &operator>> (istream &input, Date &d){
	input>>d.year>>d.month>>d.day;
	if(!input){
		d = Date(0, 0, 0);
	}
	return input;
}
相关推荐
catchadmin4 小时前
Laravel12 + Vue3 的免费可商用商业级管理后台 CatchAdmin V5 正式发布
开发语言·php
袁气满满~_~4 小时前
Python数据分析学习
开发语言·笔记·python·学习
执携4 小时前
算法 -- 冒泡排序
数据结构·算法
寻星探路4 小时前
【算法专题】滑动窗口:从“无重复字符”到“字母异位词”的深度剖析
java·开发语言·c++·人工智能·python·算法·ai
程序员小白条4 小时前
面试 Java 基础八股文十问十答第八期
java·开发语言·数据库·spring·面试·职场和发展·毕设
Dxy12393102164 小时前
python连接minio报错:‘SSL routines‘, ‘ssl3_get_record‘, ‘wrong version number‘
开发语言·python·ssl
大王小生5 小时前
C# CancellationToken
开发语言·c#·token·cancellation
listhi5205 小时前
基于C#实现屏幕放大镜功能
开发语言·c#
我叫袁小陌5 小时前
C++多线程全面详解
开发语言·c++
wen__xvn5 小时前
代码随想录算法训练营DAY14第六章 二叉树 part02
数据结构·算法·leetcode