Нет необходимости выполнять какое-либо преобразование между Objective C ++ и Objective C для простого байтового буфера.Вы можете просто передать указатель short int
между классами Objective C ++ и Objective C.
Если вы имеете в виду, как вы можете преобразовать байтовый буфер short int
в NSArray
, тогда вы на правильном пути, просто сделайте следующее:
short int *buffer = malloc(size * sizeof(short int));
NSMutableArray *shortArray = [NSMutableArray arrayWithCapacity:size];
for (NSUInteger i = 0; i < size; i++) {
[shortArray addObject:[NSNumber numberWithShort:buffer[i]]];
}
Я бы не рекомендовал этот подход, хотя он неэффективен, вам лучше просто придерживаться буфера стиля C.