본문 바로가기

지식창고/프로그래밍

(C++)클래스의 private의 사용방법과 접근 방법

반응형

평일에 일이 살짝 바빠서 주말에 되서야 글 하나 정리해서 올리네요 ㅜㅜ

 

자 오늘은 c++ 클래스의 private의 사용방법과 접근방법에 대하여 간단하게 알아 보겠습니다~

 

일단 private의 의미는 정~~~말 간단합니다.

 

바로 클래스 내부에 있는 함수에서만 접근 할 수 있게 한다는입니다.

 

무슨 말이냐구욤?

 

말이 중허겠습니까~?

 

간단한 예제를 들구 왔으니 한번 간단하게 개념이해를 위하여 따라해보시죠~

 

사용방법(예시)

#include <iostream>

 

using namespace std;

 

class Test

{

private:

                  void Show_Pr_Data()

                  {

                                   cout << "private 호출이 되네요~\n";

                  }

 

public:

                  void Show_Pu_Data()

                  {

                                   cout << "public 호출이 되네요\n";

                  }

};

 

int main(void)

{

                  Test test;

 

                  test.Show_Pu_Data();

                  //test.Show_Pr_Data();

                  //error C2248: 'Test::Show_Pr_Data' : private 멤버

                         //('Test' 클래스에서 선언에 액세스   없습니다.

                  //'Test::Show_Pr_Data' 선언을 참조하십시오.

                  //'Test' 선언을 참조하십시오

 

                  return 0;

}

위 코드를 돌려보시면~~~~

 

주석과 같은 에러 메시지들이 뜰 것 입니다~.

 

왜 뜨냐면 쉽게 풀자면 음음...

 

『너 님 뭔데 감히 허락없이 남의 것에 손대려 함?』정도려나요 ㅎ

 

주석과 같은 에러를 해결하기 위해서는 다음과 같이 코드를 수정하여 사용하시면

접근하는데 아~~~ 무 문제 없이 가능해집니다~

 

#include <iostream>

 

using namespace std;

 

class Test

{

private:

                  void Show_Pr_Data()

                  {

                                   cout << "private 호출이 되네요~\n";

                  }

 

public:

                  void Show_Pu_Data()

                  {

                                   cout << "public 호출이 되네요\n";

                  }

 

void Show_Pu_PrData()                          

//클래스 함수내에서 private 들어있는 함수 변수를 호출하기 위한 역활.

                  {

                                   Show_Pr_Data();

                  }

};

 

int main(void)

{

                  Test test;

 

 

                  test.Show_Pu_Data();

                  test.Show_Pu_PrData();

                 

                  return 0;

}

 

위 코드와 같이 private는 메인함수나 다른 유저 함수들에서

직접적인 접근을 막음과 동시에 정보를 보호해준다고 생각하는 것이 편할 것 입니다. 

 

예를 들어 제가 은행에 100만원이라는 금액을 입금했는데

나만 또는 내가 은행측에 같이 등록해둔 사람 말고 막!!!! 아무나 접근해서 막 돈을 인출해가서!!!

막 통장잔고가 사라져 가요!!!

그럼 안되겠쥬? 그리되면 제 가슴 찢어지겠쥬?

그런걸 막아주는 것이라고 편하게편하게 생각하시면 되겠습니다~ ^^

 

비록 정말 좋은 예제에 설명은 아니였지만 ㅠㅠ

 

다음에는 더욱 알기 쉽고 좋은 예제로 찾아뵐 수 있도록 노력할께요~~

 

그럼 요만~~~ 씨~~~ 유~~~

 

반응형

'지식창고 > 프로그래밍' 카테고리의 다른 글

(C++)묵시적 변환이란?  (0) 2019.07.18
(C++)클래스의 정보은닉이란?  (0) 2019.07.15
(C++)this포인터란?  (0) 2019.07.09
(C++)new와 delete란?  (0) 2019.07.07
(C++)const static 키워드란?  (0) 2019.07.06