ôn tập lập trình hướng đối tượng trong C++ (3)
?: Xây dựng 1 lớp mydate mô tả thông tin ngày, tháng, năm. Lớp gồm:
Các thuộc tính mô tả ngày tháng năm
Hàm thiết lập
Hàm nhập dứ liệu
Hàm hiển thị ngày- thang-năm
Khai báo toán tử >= để so sánh 2 đối tượng trong mydate
Viết hàm định nghĩa toán tử >= để ss đối tượng trong mydate
Viết chương trình để tạo 5 đối tượng kiểu mydate và in ra đối tượng có thời gian (ngày, tháng, năm lớn nhất) lớn nhất..
Code:
#include<iostream.h>
#include<conio.h>
class mydate
{
int d,m,y;
public:
mydate(int dd=0,int mm=0,int yy=0)
{
d=dd; m=mm; y=yy;
}
void nhap()
{
cout<<"Nhap ngay: ";cin>>d;
cout<<"Nhap thang: ";cin>>m;
cout<<"Nhap nam: ";cin>>y;
}
void in()
{
cout<<d<<" - "<<m<<" - "<<y;
}
friend int operator >=(mydate &m1,mydate &m2);
};
int operator >=(mydate &m1,mydate &m2)
{
if (m1.y>m2.y) return 1;
if (m1.y==m2.y&&m1.m>m2.m) return 1;
if (m1.y==m2.y&&m1.m==m2.m&&m1.d>=m2.d) return 1;
return 0;
};
void main()
{
clrscr();
mydate M[5],max;
int i;
for(i=0;i<5;i++)
{
cout<<"Nhap phan tu thu: "<<i+1<<"\n";
M[i].nhap();
}
max=M[0];
for(i=1;i<5;i++)
if (M[i]>=max) max=M[i];
cout<<"Thoi gian lon nhat: ";
max.in();
getch();
}
lúc 11:07 13 tháng 10, 2015
tại sao phải có >= trong hàm friend vậy ad:
friend int operator >=(mydate &m1,mydate &m2);
};
int operator >=(mydate &m1,mydate &m2)