PInvoke複習之深刻理解char*與wchar_t*與string以及wstring之間的相互轉換

本篇文章是對c++中的char*與wchar_t*與string以及wstring之間的相互轉換進行了詳細的分析介紹,須要的朋友參考下ios

#ifndef USE_H_  
    #define USE_H_  

    #include <iostream>  
    #include <windows.h>  
    #include <string>  
    using namespace std;  
    class CUser  
    {  
    public:  
        CUser();  
        virtual~ CUser();  
        char* WcharToChar(const wchar_t* wp);  
        char* StringToChar(const string& s);  
        char* WstringToChar(const wstring& ws);  
        wchar_t* CharToWchar(const char* c);  
        wchar_t* WstringToWchar(const wstring& ws);  
        wchar_t* StringToWchar(const string& s);  
        wstring StringToWstring(const string& s);  
        string WstringToString(const wstring& ws);  
        void Release();  
    private:  
        char* m_char;  
        wchar_t* m_wchar;  
    };  
    #endif;
#ifndef USE_H_  
    #define USE_H_  

    #include <iostream>  
    #include <windows.h>  
    #include <string>  
    using namespace std;  
    class CUser  
    {  
    public:  
        CUser();  
        virtual~ CUser();  
        char* WcharToChar(const wchar_t* wp);  
        char* StringToChar(const string& s);  
        char* WstringToChar(const wstring& ws);  
        wchar_t* CharToWchar(const char* c);  
        wchar_t* WstringToWchar(const wstring& ws);  
        wchar_t* StringToWchar(const string& s);  
        wstring StringToWstring(const string& s);  
        string WstringToString(const wstring& ws);  
        void Release();  
    private:  
        char* m_char;  
        wchar_t* m_wchar;  
    };  
    #endif;

若是涉及到CString,能夠利用CString::GetBuffer()函數來進行轉換,道理同樣.c++

相關文章
相關標籤/搜索