首页 > 编程语言 >C++

C++

时间:2023-05-26 20:14:13浏览次数:62  
标签:hour int C++ Time y1 y2 minute

运算符重载

#include<iostream>
using namespace std;

class Time
{
public:
Time(){}
Time(int h,int m)
{
hour=h;
minute=m;
}
friend Time operator - (Time &a,Time &b)
{
Time c;
if(a.minute>b.minute&&a.hour<b.hour)
{
c.minute=(60-a.minute)+b.minute+(b.hour-a.hour-1)*60;
}
if(a.hour==b.hour)
{
c.minute=b.minute-a.minute;
}
if(a.minute<=b.minute)
{
c.minute=b.minute-a.minute+(b.hour-a.hour)*60;
}
return c;
}
void display()
{
cout<<minute<<endl;
}
private:
int hour;
int minute;
};

int main()
{
int x1,y1,x2,y2;
while(cin>>x1>>y1>>x2>>y2)
{
Time a(x1,y1),b(x2,y2),c;
if(x1==00&&y1==00&&x2==00&&y2==00)
{
break;
}
c=a-b;
c.display();
}
return 0;
}

标签:hour,int,C++,Time,y1,y2,minute
From: https://www.cnblogs.com/zh-ang-zhang/p/17435700.html

相关文章

  • 使用 OpenCV 进行轮廓检测 (Python/C++)第一部分
    什么是轮廓当我们连接一个对象边界上的所有点时,我们得到一个轮廓。通常,特定轮廓是指具有相同颜色和强度的边界像素。OpenCV使得在图像中查找和绘制轮廓变得非常容易。它提供了两个简单的功能:findContours()drawContours()此外,它有两种不同的轮廓检测算法:CHAIN_APPROX_SIMPLECHAIN_......
  • C++类的基础、构造、析构
    双向链表节点——具体的表表里面要维护什么是由你自己来决定的以链表为例讲解为什么需要类用户修改了你的链表,暴露给所有人创建和销毁,忘记了,内存泄漏冗长的名字封装分离实现细节和接口一定要把细节private接口public接口修改调用我们是知道的......
  • c++打卡练习(40)(大一最后一次)
    求可逆素数若一个四位数的素数把它倒序过来还是素数,那么称它为可逆素数,如1009和9001就是一对可逆素数流程图:伪代码:源代码:#include<iostream>usingnamespacestd;intmain(){ intstart,end,i,j,m=0; for(i=1000;i<=9999;i++){ intk=0; for(j=2;j<i;j++){ if(i%j==0){ ......
  • C++文件流结构体序列化,并查集,LRU缓存
    c语言中的文件操作中用fprintf将数据写入到文件中,用fscanf将文件读入内存中,而c++中也有ostream和istream作为键盘流输入,屏幕流输出,对于文件也有ofstream/istream来进行相关的操作.如图:图中表示将一个结构体的的数据输入到文件中,并从文件中读取数据,并用得到的数据初始化一......
  • open mp c++
    FIND_PACKAGE(OpenMPREQUIRED)if(OPENMP_FOUND)message("OPENMPFOUND")set(CMAKE_C_FLAGS"${CMAKE_C_FLAGS}${OpenMP_C_FLAGS}")set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}${OpenMP_CXX_FLAGS}")......
  • c++string的erase方法
    erase函数的原型如下:(1)string&erase(size_tpos=0,size_tn=npos);(2)iteratorerase(iteratorposition);(3)iteratorerase(iteratorfirst,iteratorlast);也就是说有三种用法:(1)erase(pos,n);删除从pos开始的n个字符,比如erase(0,1)就是删除第一......
  • C++几种智能指针之间的比较
    这些智能指针在设计的时候,一个关键的问题就是所有权的控制。如果把指针所指向的对象比作电视机的话,那么指针就是观众。第一个人需要看电视的时候需要打开它,没人看的时候就要保证把电视关掉。对于std::auto_ptr,boost::shared_ptr和scoped_ptr,情况如下:1.std::auto_ptr:auto_ptr这个......
  • C++写得统计线程利用率的小工具
    thread_usage.h#ifndef__THREAD_USAGE__#define__THREAD_USAGE__#include<fstream>#include<string>#include<map>#include<pthread.h>#include<sys/time.h>namespacethread{classCThreadUsage{pu......
  • How to initialize a static const map in c++?
    #include<map>usingnamespacestd;structA{staticmap<int,int>create_map(){map<int,int>m;m[1]=2;m[3]=4;m[5]=6;returnm;}staticconstma......
  • C++ 注释
     程序的注释是解释性语句,您可以在C++代码中包含注释,这将提高源代码的可读性。所有的编程语言都允许某种形式的注释。C++支持单行注释和多行注释。注释中的所有字符会被C++编译器忽略。C++注释一般有两种:// -一般用于单行注释。/*...*/ -一般用于多行注释。......