[英]error: conversion from ‘Mstream’ to non-scalar type ‘std::string {aka std::basic_string<char>}’ requested
[英]conversion from ‘std::wstring {aka std::basic_string<wchar_t>}’ to non-scalar type ‘UString {aka std::basic_string<char>}’
您能告訴我這段代碼有什么問題嗎,以及有關如何解決的任何想法?
JNIEXPORT jstring JNICALL Java_COM_DEMO_TEST_SEND (JNIEnv
*env, jclass c, jstring param){
const char* strParam = env->GetStringUTFChars(param, 0);
UString data = s2ws(string(strParam));
UString result = TEST::SEND(data);
return env->NewStringUTF(ws2s(result).c_str());
}
我得到以下錯誤。
error: conversion from ‘std::wstring {aka std::basic_string<wchar_t>}’ to non-scalar type ‘UString {aka std::basic_string<char>}’ requested
UString data = s2ws(string(strParam));
實際上,該錯誤非常好; 您正在嘗試使用std::string
但您有一個std::wstring
,並且編譯器不知道如何將一個轉換為另一個。
它們都是std::basic_string
這一事實並不意味着它們是可互換的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.