이전에 요청한 질문과 관련하여 특정 쿼리가있었습니다.StackType 개체에 대한 액세스 권한이없는 스택 맨 수정
이 함수 프로토 타입 void StackPop(NodeType *Top)
을 받았고 스택 개체에 액세스하지 않고 스택의 맨 위에 수정을 지시했습니다. 여기서 StackPop
함수는 전역 함수이며 Stack 클래스의 멤버 함수는 아닙니다. 팝업 후, Top은 Top 요소의 새 값을 가리켜 야합니다.
해결책으로 스택을 호출하는 동안 스택 맨 위 노드의 주소를 함수에 전달하는 경우에만 스택 맨 위를 팝하는 것이 가능합니다. 예 : StackPop(&address);
스택
NodeType* temp;
temp = top;
*top = (*top)->next;
delete temp;
이 질문에 간단한 대답인가, 아니면 뭔가 다른 알아서해야하는 경우가의 상단을 수정하려면?
함수 인수가 Node 또는 NodeType입니까? –
@Als : Editted. 예, NodeType입니다. – Cipher