【问题标题】:Convert System::String^ to cv::String将 System::String^ 转换为 cv::String
【发布时间】:2017-11-14 23:05:31
【问题描述】:

我搜索了一段时间试图找到是否有类似的问题,但找不到。

如何将System::String^(来自VC++)转换为cv::String(来自OpenCV)?

double x, y;
x = 10;
y = 10;
System::String ^ displayString = System::String::Concat("( ", x, " , ", y, " )");
char * test1 = displayString->ToCharArray;
cv::String test = cv::String(test1)

给出错误

Severity    Code    Description Project File    Line    Suppression State
Error   C3867   'System::String::ToCharArray': non-standard syntax; use '&' to create a pointer to member   RobocopComputerVision   RobocopComputerVision   .cpp    156 

System::String^ 转换为cv::String 的最佳方法是什么?

【问题讨论】:

标签: string opencv pointers visual-c++


【解决方案1】:

试试这个,

#include <msclr\marshal_cppstd.h>
using namespace msclr::interop;
/* ... ... */
System::String ^ displayString = System::String::Concat("( ", x, " , ", y,")");
cv::String test = marshal_as<std::string>(displayString);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多