Как я могу узнать имя символа, сгенерированного компилятором для моего кода? - PullRequest
1 голос
/ 14 апреля 2011

Я знаю, что это довольно глупый вопрос.Я почти ничего не знаю о том, как на самом деле работает компилятор.

Но в последнее время я хочу найти, какое имя символа генерирует компилятор для моего ivar, моих методов.Где и как я могу узнать ответ?(Я использовал только некоторые IDE. Поэтому, если решение лучше быть простым. И было бы очень полезно, если бы инструкции, которые вы предоставляете, были действительно явными)

(Кстати, есть ли какая-нибудь ссылка, которую яможете узнать о таких вещах?)

PS. Я разработчик IOS. И если gcc и LLVM работают по-разному, ответьте на этот вопрос, я хотел бы знать оба.

Ответы [ 3 ]

4 голосов
/ 14 апреля 2011

Вы можете использовать нм для выгрузки содержимого двоичного объекта. Затем каждый компилятор имеет свой собственный способ искажения. Я предлагаю вам взглянуть на Имя искажения для цели C в Википедии , это поможет вам понять, как работает искажение.

0 голосов
/ 15 апреля 2011

Если вы используете XCode 3, выберите исходный файл и затем выберите «Показать код сборки» в меню «Сборка».

Очевидно, пользователям XCode 4 не нужен код сборки: - (

0 голосов
/ 14 апреля 2011

Конечно, GCC и Clang должны иметь совместимые схемы распределения имен, поскольку они могут использовать код друг друга.

...