字元轉換異常

2021-09-30 10:47:11 字數 585 閱讀 7708

編譯過程**現如下錯誤:不能將引數 1 從「const wchar_t *」轉換為「std::string」

出錯**如下:

cstring csfilename = getdocument()->getfilename();

mosg->initosg(csfilename.getstring());

initosg的函式原型如下:

void cosg::initosg(std::string modelname);

原因:ansi和unicode的區別就是

ansi編碼cstring預設是窄位元組的

unicode預設是寬位元組的

std::string總是窄位元組的

所以unicode下你要做寬窄位元組轉換

uses_conversion;

std::string str=w2a(csfilename.getbuffer());

mosg->initosg(str);

ok了

異常 應用與異常轉換

畢老師用電腦上課 問題中設計兩個物件 畢老師 電腦 分析其中的問題 比如電腦藍屏啦 電腦冒煙啦 class langpingexception extends exception class maoyanexception extends exception class noplanexceptio...

異常 異常轉換的理解

為了程式的健全性,程式可能會出現的問題 1 電腦藍屏 2 電腦冒煙 1 電腦類 class computer if state 2 system.out.println 膝上型電腦正在執行 電腦啟動功能 public void reset 2 coco老師 class teacher 老師上課方法 ...

字串轉換數值型別異常分析

在這篇文章中,我們來分析一下c 的函式int.parse 字串轉換數值型別時候發生的異常。int.parse string str 這種方法是將數字內容的字串轉換為int型別。如果字串的內容為null 則丟擲argumentnullexception異常 如果字串內容不是數字,則丟擲formatex...