2013-07-24 1 views
0

xcode 프로젝트에 문제가 있습니다. 이 플랫폼에 익숙하지 않아서이 문제를 해결하기 위해 도움을 받았습니다.시맨틱 문제 -이 플랫폼에서는 sizeof가 지원되지 않습니다.

엑스 코드 오류 :

../Classes/CDeck.m:66:37: Application of 'sizeof' to interface 'CCard' is not supported on this architecture and platform

코드 : 프로젝트에 대한 정보가 필요하면

-(void) CopyFrom:(CDeck *)Deck 
{ 
    Nbr=Deck.Nbr; 
    memcpy(Cards,[Deck GetByID:0], Nbr*sizeof(CCard)); // Here is the error 
} 

그냥 말해. 고마워요.

+1

Objective-C 구조체에서'sizeof'와'memcpy'를 사용하면 _REALLY BAD_ 아이디어처럼 보입니다. 컴파일러는 기본적으로 그렇게 할 수 없기 때문에 오류가 발생합니다. –

답변

1

이것은 스택 할당 유형이 아니기 때문입니다. 포인터의 크기를 얻으려면 sizeof(CCard *)을 사용하십시오 (힙 메모리와 상관 없음).