#objective-c #xcode #compiler-construction #llvm
#objective-c #xcode #построение компилятора #llvm
Вопрос:
Я часто вижу в коде такие вещи, как 60*60
вместо 3600
. Они оба компилируются для одной и той же вещи? Т.Е. заменяет ли предварительный компилятор 60 * 60 на 3600
для вас?
Ответ №1:
Да, константные выражения вычисляются во время компиляции.
Ответ №2:
Чтобы быть абсолютно корректным, это не требуется, но большинство компиляторов делают это. Прочитайте о постоянном сворачивании.
Комментарии:
1. Однако вопрос касался конкретной реализации.
2. 1 за ссылку и соответствующую фразу, используемые в реализации компилятора.
3. @MichaelKrelin-хакер, я соглашаюсь. я подумал о добавлении названия метода.
4. @alvin, с моей стороны возражений нет 😉