У меня есть следующий код для выполнения обратного вызова, который принимает несколько значений:
+(bool)select:(int)x0 y0:(int)y0 x1:(int)x1 y1:(int)y1{
if (viewer == NULL)
return false;
std::function<void(std::string&)> callback = [](std::string& test) {
std::cout<< test << std::endl;
};
viewer->activeViewportWrap().selectIOS(TghRmtVport::kSelSkipHighlighted|TghRmtVport::kSelHighlight,x0,y0,x1,y1);
viewer->activeViewportWrap().getSelectedHandles(TghRmtVport::kSelSkipUnhighlighted, x0,y0,x1,y1,callback);
return true;
}
Этот код реализован в файле mm. Как я могу отправить данные (std::string& test
) из callback в список Swift?
Отредактировано: Я ошибся. Не для списка Swift. Для Swift array. Мне нужно перетащить данные strign из C++ в массив строк Swift.
Неясно, что вы подразумеваете под:
Вам понадобится мост Objective-C между C++ и кодом Swift. Однако, из того, что вы просили, совершенно неясно, что именно вам нужно жениться. Не могли бы Вы уточнить?