Используя LLVM Clang 2.6 с Xcode 3.2

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

В вашем случае вы можете просто удалить знак равенства из цикла for.

for(int i = 0; i<name.length; i++)

Лучшим вариантом является итерация массива:

for(String i : name )
      System.out.println(i);
14
задан Dan D. 17 February 2012 в 21:37
поделиться

2 ответа

Во-первых, вы имеете в виду clang 1.0, основанный на LLVM 2.6. Нет никакого clang 2.6, только clang 1.0, основанный на LLVM 2.6. Кланг, выпущенный на основе LLVM 2.6, такой же, как и Xcode 3.2 (см. Wikipedia): "23 октября 2009 года Clang 1.0 был впервые выпущен вместе с LLVM 2.6"; я также знаю это по личному опыту)

Во-вторых - вы можете интегрировать любую версию clang, даже ту, которую вы собираете из SVN clang. Для этого у меня есть .xcconfig файл (простой текстовый файл с суффиксом .xcconfig) с двумя включенными настройками:

GCC_VERSION = com.apple.compilers.llvm.clang.1_0
CC = /Users/jpo/Development/oss/llvm/Debug/bin/clang

Затем я добавляю xcconfig файл в свой проект (потому что он содержит некоторые другие предупреждения, которые я люблю включать, например, предупреждения, которые рекомендует Питер Хоузи ). Затем, в правом нижнем углу вкладки "Настройки сборки" моего проекта я говорю, что это 'Основано на' имени моего xcconfig файла.

Это все отлично работает, потому что тогда вы можете просто удержать файлы от clang SVN в каталоге на вашем диске и собрать его, а ваши проекты Xcode будут всегда использовать вашу последнюю собранную версию, так как она всегда будет по этому пути. Конечно, сборка clang сама по себе отнимает много времени, но всё равно это очень, очень круто, что вы используете передовую технологию

.
14
ответ дан 1 December 2019 в 14:22
поделиться

Итак, не перезаписывайте! Переименуйте их в соответствующую версию (например, clang-1.0), затем создайте символическую ссылку на ту, которую хотите. Если что-то пойдет не так, вы можете переключить его на исходную версию.

/ Developer / usr / bin ... на случай, если вы не знаете, где находятся контейнеры.

0
ответ дан 1 December 2019 в 14:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: