2012-10-30 1 views
2

나는 C++을 배우려고하고 this online book을 따르고 있으며 대개는 좋지만 가끔은 잘 설명되지 않는다고 느낍니다. 연결리스트에 대해 이야기 할 때 163 페이지에함수 선언이있는 할당

, 그는이 코드를 보여줍니다

p_enemies = EnemySpaceShip* addNewEnemyToList(p_enemies); 

그것은 완전히 컨텍스트에서 작성되지를,하지만 난 p_enemies가 선언 된 포인터를 것 믿고, addNewenemyToList는 것 정의 된 함수. 내가 궁금해하는 것은이 표현이 어떻게 작동 할 것이며,이 적절한 코드이다. 그것은 메소드 선언처럼 보이기 때문에 나에게 이해가되지 않는다. 거기에 리턴 타입이 있지만, 할당 후에 거기에있다. 이게 뭐야?

+2

유일한 방법은 EnemySpaceShip이 개체 인 경우입니다.이 경우 개체는 함수 호출 결과와 곱해집니다. 함수 결과를 캐스팅 한 중괄호가없는 것이 확실합니까? – chris

+0

btw, 온라인 도서에 대한 링크는 현재 Gmail의 첨부 파일에 대한 링크이므로 볼 수 없습니다 : P –

+3

@MikeTrusov,이 하나 인 것으로 보입니다. http://www.scribd.com/doc/ 105834938/Jumping-Into-c – chris

답변

1

코드 스 니펫은 의미가 없습니다.

이 내가 유효한이 조각을 볼 수있는 유일한 방법입니다 :

p_enemies = (EnemySpaceShip*) addNewEnemyToList(p_enemies); 

결과 : p_enemies이 형 EnemySpaceShip의 포인터 인 경우 이는 "addNewEnemyToList"α- 함수의 반환 값을 할당합니다 반환 값을 EnemySpaceShip 포인터로 변환 한 후 p_enemies로 반환합니다. 그렇지 않으면 회선이 실패합니다.

관련 문제