본문 바로가기
01.Bit 단기/C++

10_날짜활용실습(3단계)

by chojju 2018. 4. 29.
반응형

#include <iostream>
using namespace std;
/*
1. 날짜를 관리하는 프로그램
   오늘날짜, 내일날짜...(일반변수)
*/
//step1)
void today(int *y, int *m, int *d)
{
 *y = 2016;   *m = 7;  *d = 13;
}
void print(int y, int m, int d)
{
 cout << y << "/" << m << "/" << d << endl;
}
void nextday(int *y, int *m, int *d)
{
 *d = *d + 1;
}
int main()
{
 int year, month, day;
 today(&year, &month, &day);
 print(year, month, day);
 nextday(&year, &month, &day);
 print(year, month, day);
}


#include <iostream>
using namespace std;
/*
1. 날짜를 관리하는 프로그램
   오늘날짜, 내일날짜...(C언어구조체)
*/
//step2)
struct date
{
 int year;
 int month;
 int day;
};

void today(date *p)
{
 p->year = 2016;   p->month = 7;  p->day = 13;
}
void print(date d)
{
 cout << d.year << "/" << d.month << "/" << d.day << endl;
}
void nextday(date *p)
{
 p->day =  p->day+ 1;
}
int main()
{
 date d;
 today(&d);
 print(d);
 nextday(&d);
 print(d);
}


//step3) 캡슐화 : (데이터 + 함수)(C++언어구조체)
// 데이터와 함수를 묶어서 관리하는 것
// 단, 묶을 데이터와 함수는 관계성이 있어야 함

//C언어 struct(구조체) : 맴버변수
//C++언어 struct(구조쳬) :맴버변수, 맴버함수
//맴버함수는 맴버변수에 접근할 수있다.
struct date
{
 int year;
 int month;
 int day;

 void today()
 {
  year = 2016;  month = 7;  day = 13;
 }
 void print()
 {
  cout << year << "/" << month << "/" << day << endl;
 }
 void nextday()
 {
  day = day + 1;
 }
};

int main()
{
 date d;  //생성된 개체=>인스턴스
 date d1;
 d.today(); //맴버함수호출
 d.print();
 d.nextday();
 d1.print(); 
}

반응형

'01.Bit 단기 > C++' 카테고리의 다른 글

12_클래스  (0) 2018.04.29
11_C++구조체  (0) 2018.04.29
09_기본값  (0) 2018.04.29
08_오버로딩  (0) 2018.04.29
07_reference  (0) 2018.04.29

댓글