프로그래밍

 3198, 1/160 회원가입  로그인  
   ERIC910903
   http://blog.naver.com/eric910903
   클래스(Class) Private 에 접근 하는 방법은?

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=2977 [복사]


제가 클래스를 배우게 되었는데요.

Public 까지는 어떻게 접근 해서 사용하느줄 아는데...
Private이 쉽지가 않네요?

예를들어


#include<iostream>
using namepace std;
const int Size=100;

class
{
public :
int Num[Size];
int Sample;

private :
Char Number [Size];
};

int main()
{

(어떻게 Private에 있는 Number(Array)를 사용할수 있나요?)

return  0;
}

제가 찾아보고 책을 읽어봐도.
뚜렷한 정보가 안나와 있고..
또한
듣기로는...

private에서 public으로 바꿔서 사용한다던데?

도와주세요.

  Hit : 4277     Date : 2011/05/01 01:24



    
clockmaker 같은 클래스 안에 public으로 getter와 setter 메소드를 만들어서 사용하시면 됩니다.
자세한 건 당연히, 검색을 해 보세요.
이 정도 keyword면 충분히 찾으실 수 있을 거에요.
2011/05/01  
rainroad87 private로 선언된 변수나 함수는

그 해당 클래스 내부에서밖에 사용할수가 없습니다.

기본적으로 클래스에서는 public나 protected,private로 설정안해주시면 private로 선언됩니다.

구조체는 public
2011/05/01  
clockmaker ㄴ 캡슐화...를 위해 private로 선언하고
getter와 setter 메소드를 이용해서 접근 가능합니다.
2011/05/02  
rainroad87 ㄴ private변수와 함수의 경우 public으로 선언된 함수내에서의 사용시 public으로 선언된 함수를 이용해 외부호출시 private에 접근이 가능한데, 그것 또 한 정확히 이야기 하면 클래스 내부에서밖에 사용할수 없는것이죠, 그리고 캡슐화를 위해 private를 사용하는것이 아니고 정보 은닉 때문에 private를 사용하는것입니다;; 단순 캡슐화를 위해서는 public으로 모든함수와 변수를 때려넣는것 또한 위배되지 않습니다. 2011/05/02  
rainroad87 ㄴ 캡슐화...를 위해 private로 선언하고
getter와 setter 메소드를 이용해서 접근 가능합니다. 는 말씀이 틀리다는건 아닙니다.
clock님은 사용방법에 대해서 댓글을 단거고
저는 개념에 대해서 답변을 단건뿐입니다.
C++에서는 getter메소드,setter메소드라는 용어를 잘 사용하지 않고 주로 자바에서 사용합니다.
2011/05/02  
ERIC910903 답글감사합니다.
제가 교수님 한테물어보니 getter, 이나 setter 이나 public 으로 변환에서도 가능하지만......
그냥public 에서 바로 불러올수있더군요..
setter 이나 getter 아해하기가 조금어렵더군요 ...
어쨋든 답변감사합니다
2011/05/03  
dkdkfjgh public에서 함수 하나 만들어서 접근하세요. 2011/05/08