Как заставить IntelliJ использовать Java 8 для модуля Maven вместо Java 11 на уровне языка 8?

Objective-C - очень тонкая оболочка поверх C. Компилятор просто переводит

 [obj message:argument];

в C-вызов

 obj_msgSend(obj,@selector(message:),argument);

, и это он (где @selector(message:) - это волшебное кодирование, превращающее селектор (имя метода) в понятное для компьютера.)

Таким образом, с Objective-C и C с точки зрения компилятора нет большой разницы. Например, вы можете скомпилировать чистую программу C с компилятором Objective-C с точно таким же результатом, как и при компиляции с компилятором C.

Итак, самый простой способ «смешать» бит Objective-C с C - использовать расширение .m, чтобы компилятор использовал Objective-C.

Это не делает вашу программу внезапно очень Objective-C-y. Вы можете сохранить свою программу почти чистой C, с расширением .m. С помощью .m вы можете добавить несколько строк сообщений Objective-C без проблем.

2
задан Thorbjørn Ravn Andersen 18 January 2019 в 09:47
поделиться