#include <iostream>

#include <cstring>

using namespace std;


class String {

char buf[1000];

public:

String(const char* sz) 

{

strcpy(buf, sz);

}

~String() {}


operator const char* () const 

{

return buf;

}

};


int main()

{

String s("Hello");

const char* sz = s;


cout << sz << endl;

}



operator const char* () const
{
 return buf;
}

형변환 연산자 오버로딩

return buf; 이므로 String 클래스 안에 있는 맴버 buf를 return


형변환 연산자 오버로딩은 

operator 타입명 () const

으로 원형을 정의한다.



'Programing > C++' 카테고리의 다른 글

함수 객체  (0) 2015.09.04
멤버 함수 포인터 선언  (0) 2015.09.04
형변환 연산자 오버로딩  (0) 2015.09.04
-> , * 연산자 오버로딩  (0) 2015.09.02
간단한 오버라이딩  (0) 2015.09.02
구조체로 구현한 Invader  (0) 2015.06.09
Posted by thread1525

댓글을 달아 주세요


블로그 이미지
1525번 thread 입니다.
thread1525

공지사항

Yesterday9
Today1
Total6,171

달력

 « |  » 2019.10
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

최근에 달린 댓글

최근에 받은 트랙백

글 보관함