게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
클라이언트에서 클래스 private 에 접근하는 방법이 있나요?
게시물ID : computer_19676짧은주소 복사하기
작성자 : 개념
추천 : 0
조회수 : 370회
댓글수 : 5개
등록시간 : 2011/10/03 19:55:34
자료구조에 Stack 에서

Top 이란 함수는 stack 이라는 클래스 내의 저장 되어있는 배열의 마지막 값을 출력합니다.

하지만 이 Top 함수를 클래스 내에 구현 하지않고 클라이언트에 구현하라고 문제가 주어졌는데.

클래스네에 private 선언되어있는 item[] 배열과 현재 그 배열에 저장된 마지막 값이 들어가 있는 top 라는 정수형을 참조 안하면 만들수가 없을꺼 같은데 어떻게 하라는걸까요...

만약 1 2 3 4 가 저장 되어있다면 item[3] = 4 이런식으로 출력 하는 함수를 구현하라는건데..

이게 가능한건가요?

ItemType Top
함수 : 스택의 마지막 요소의 복사본을 리턴한다.
조건 : 스택은 비어있지 않다
결과 : 함수값 = 스택 top의 요소의 복사본, 스택은 바뀌지 않는다.

ItemType 은 int 형으로 정의 합니다.

class StackType
{
public:
StackType();
bool IsFull() const;
     // 스택이 가득차있는가?
bool IsEmpty() const;
     // 스택이 비어있는가?
void Push(ItemType item);
     // 스택에 item 값을 삽입하고 top++
void Pop();
     // 스택에 마지막 값을 삭제 하고 top--
private:
int top;
     // 현재 스택에 저장된 마지막 값의 위치
ItemType items[5];
     // 스택이 저장 되는 배열
};

이건 StackType 클래스.. 

클래스 내에 다른 함수를 만들어 넣지 않으면 불가능 한게 맞는거죠?
꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호