Objective-C является надмножеством C, и поэтому все, что C будет работать с ними.Однако std::vector
- это класс C ++, что означает, что компилятор должен знать, что вы собираетесь использовать код C, Objective-C и C ++ внутри вашей программы.Вы можете сделать это, изменив расширение ваших исходных файлов с .m
на .mm
.
Однако, если вы все еще находитесь на этапе изучения Objective-C или C ++, постарайтесь не смешивать слишкоммного C ++ с этим.C ++ использует «не POD-типы» (POD - «простые старые данные»), которые по своей сути несовместимы с функциями, которые принимают переменные аргументы;Таким образом, все вызовы Objective-C работают таким образом, что может усложнить работу с типами C ++ через вызовы Objective-C, если вы не слишком уверены в том, как все это работает.Вы также можете использовать класс NSMutableArray
Какао.