Перекрытие между расширениями файлов Objective-C и MATLAB / Octave - PullRequest
3 голосов
/ 06 августа 2011

Имеют ли Objective-C или MATLAB / Octave расширения для исходного файла помимо .m? Я спрашиваю, потому что я помещаю программы Hello World в одну папку, и у меня не может быть двух hello.m файлов.

Ответы [ 3 ]

2 голосов
/ 06 августа 2011

Я вижу только один способ - создать подкаталоги для каждой из программ и поместить туда свои файлы.Вы можете указать Obj-C рассматривать другие расширения как Obj-C, но это не решит проблему для других программ.

Обновление

Чтобы скомпилировать любое расширение как Objective-C, используйте-x objective-c в командной строке или выберите Objective-C из «Compile Sources As» в настройках целевой сборки.По умолчанию установлено «Согласно типу файла», что означает, что только файлы .m компилируются как Objective-C.

FWIW, между Objective-C ++ и Objective-C существует множество тонких отличий.Я бы сам использовал подпапки для разделения файлов .m, как я уже говорил выше.

1 голос
/ 06 августа 2011

Обходной путь должен был бы использовать .mm для Objective-C. .mm используется для исходных файлов Objective-C ++ и является расширенным набором Objective-C, поэтому он должен хорошо компилироваться.

Это ни в коем случае не чистое решение. Гораздо лучшим способом было бы реорганизовать вашу папку в подпапки, как это было предложено Радди Велтуисом, или просто назвать ваши исходные файлы hello-objective-c.m и hello-matlab.m.

0 голосов
/ 06 августа 2011

MATLAB не может найти файлы, если у них нет расширения .m (очень важно!)

Теперь я очень мало знаю об Objective-C, я предполагаю, что это расширенный набор C (как и C ++). Если это так и аналогично C / C ++, вы должны иметь возможность передавать любое имя файла в качестве входных данных для компилятора:

g++ -c myfile.m.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...