[英]How to set a C++ std::vector to OAT++ Vector
我從設備獲取矩陣數據 (float *),我可以將其轉換為 std::vector,並且我想將數據返回給調用者。
我將 DTO 定義為
class TempMatrixDto : public oatpp::DTO{
DTO_INIT(TempMatrixDto, DTO)
DTO_FIELD(Object<MeasureDto>, measureParm, "parm");
DTO_FIELD(Vector<Float32>, MatrixData, "MatrixData");
};
在應用程序代碼中:
auto tempMatrix = TempMatrixDto::createShared();
tempMatrix->measureParm=xxxx;
如何將 std::vector 或數組 (float *) 設置為 tempMatrix->MatrixData?
謝謝你。
如果您有oatpp::Vector<oatpp::Float32>
和std::vector<float>
那么對於 Oat++ 1.3.0
您必須手動填充oatpp::Vector<oatpp::Float32>
中的元素
auto tempMatrix = TempMatrixDto::createShared();
tempMatrix->MatrixData = {}; // init empty vector. Otherwise it will be null
std::vector<float> values({1.0, 2.0, 3.0});
for(auto& v : values) {
tempMatrix->MatrixData->push_back(v);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.