[code]#include <turboc.h>
class Date;
class Time
{
// 프렌드 함수는 전역, 클래스, 맴버 함수의 세가지 수준에서
// 지정할 수 잇는데 이를 지정하게 되면 전역 변수 처럼
// 사용할 수 있다.
friend void outToDay(Date &, Time &);
private:
int hour, min, sec;
public:
Time(int h, int m, int s)
{
hour = h;
min = m;
sec = s;
}
};
class Date
{
friend void outToDay(Date &, Time &);
private:
int year, month, day;
public:
Date(int y, int m, int d)
{
year = y;
month = m;
day = d;
}
};
// 해당 함수는 두 클래스의 맴버를 읽어야 되기 때문에
// friend 를 이용 양쪽 에서 모두 사용할 수 있게끔
// 변경하였다 ...
void outToDay(Date &d, Time &t)
{
printf("오늘은 %d년 %d월 %d일 이며 지금 시간은 %d:%d:%d 입니다.",
d.year, d.month, d.day, t.hour, t.min, t.sec);
}
void main()
{
Date D(2004,01,11);
Time T(12, 34, 13);
outToDay(D, T);
}[code]
class Date;
class Time
{
// 프렌드 함수는 전역, 클래스, 맴버 함수의 세가지 수준에서
// 지정할 수 잇는데 이를 지정하게 되면 전역 변수 처럼
// 사용할 수 있다.
friend void outToDay(Date &, Time &);
private:
int hour, min, sec;
public:
Time(int h, int m, int s)
{
hour = h;
min = m;
sec = s;
}
};
class Date
{
friend void outToDay(Date &, Time &);
private:
int year, month, day;
public:
Date(int y, int m, int d)
{
year = y;
month = m;
day = d;
}
};
// 해당 함수는 두 클래스의 맴버를 읽어야 되기 때문에
// friend 를 이용 양쪽 에서 모두 사용할 수 있게끔
// 변경하였다 ...
void outToDay(Date &d, Time &t)
{
printf("오늘은 %d년 %d월 %d일 이며 지금 시간은 %d:%d:%d 입니다.",
d.year, d.month, d.day, t.hour, t.min, t.sec);
}
void main()
{
Date D(2004,01,11);
Time T(12, 34, 13);
outToDay(D, T);
}[code]
'Native > C++' 카테고리의 다른 글
friend memory (0) | 2013.10.02 |
---|---|
friend class (0) | 2013.10.02 |
kbhit() (0) | 2013.10.02 |
데이터의 보호 (0) | 2013.10.02 |
형변환 금지 explicit (0) | 2013.10.02 |