у меня есть вектор shared_ptr:
std::vector<std::shared_ptr<Element>> vector
Мне нужно передать его в NSArray, я пробовал вот так:
_arrayDataSource = [NSArray arrayWithObjects:&vector[0] count:vector.size()];
но это дает мне эту ошибку:
Cannot initialize a parameter of type 'id _Nonnull const __unsafe_unretained * _Nonnull' with an rvalue of type 'std::__1::__vector_base, std::__1::allocator > >::value_type *' (aka 'std::__1::shared_ptr *')
Есть ли лучший способ передать вектор shared_ptr в NSArray?
На самом деле нет, проблема совсем в другом, ошибка связана с одним из решений, которые я пробовал, а не сама проблема
Это XY проблема. Чего вы на самом деле пытаетесь достичь этим?
Разве вам не понадобится NSArray с объектами типа Element, которые вы можете перебрать, разыменовывая объекты shared_ptr и назначая их элементам NSArray?
да, мне нужно преобразовать вектор shared_ptr в NSArray





Возможный дубликат Невозможно инициализировать параметр типа id _NonNull с lvalue типа double