이
return [[DJLocalizationSystem shared] localizedStringForKey:(key) value: @"" table: nil bundle:bundle];
그러나,이
return objc_msgSend([DJLocalizationSystem shared], @selector(localizedStringForKey:value:table:bundle:),(key),@"",nil,bundle);
작동하지 않습니다 잘 작동 그리고 방법은 문자열 값을 반환합니다.
런타임에 objc_msgSend를 사용할 때 왜 그런가요?
EXC_BAD_ACCESS 코드 = 1, 주소 = 0x8이
는 비슷한 질문 stackoverflow 있습니다,하지만 난 대답 중 어느 것도 정확하지 생각합니다. 0x8과 아무 관련이 없습니다.
앤디 objc_msgSend의 대해서 typesafety 직접 호출하기 때문에,이 http://stackoverflow.com/a/2573949/753878, 캐스팅에 대해 특히 부분을 고려된다,있을 수 있습니다 당신이 제공하는 코드에 대한 다양한 문제. 이 다른 호출 규칙 (ABI에서 정의 됨)을 제외하면 다른 데이터 유형에 따라 다를 수 있으므로 가능한 한 많이 혼동하지 말 것을 제안합니다. – dymv