zoukankan      html  css  js  c++  java
  • CString和string的互相转换

    CString->std::string 例子:
    CString strMfc=“test“;
    std::string strStl;
    strStl=strMfc.GetBuffer(0);

    std::string->CString 例子:
    CString strMfc;
    std::string strStl=“test“;
    strMfc=strStl.c_str();

    ====================================

    std::string s("Hello");
    CString cs(s.c_str());

    CString cs("Hello");
    std::string s((LPCTSTR)cs);

    ======================================

    字符数组换为字符串
    using namespace std;

    char a[10]="aaaabbbba";
    string s(&a[0],&a[strlen(a)]);

    字符串转换为字符数组

    string s="aaaavvva";
    char a[10];
    strncpy(a,s.c_str(),s.length());

     -------------------------------------------------------------------------------

    extern const 的使用问题
    Test.cpp
      const CString a = "aaa";

    Main.cpp
       extern const CString a; void CTestMFCDlg::OnOK() { AfxMessageBox(a); CDialog::OnOK(); }

    上述代码在VC6.0下编译不通过。请问为什么?
    但是把const CString a = "aaa";换成 extern const CString a = "aaa";就可以成功了
    因为const 修饰之后默认的是internal link属性,你必须用extern来显示声明。
    非const变量的 默认属性 file间共享的, 所以要把它限制在一个文件内,通常加static,
    而const变量刚好相反,默认属性是文件内部可以见的,如果要文件间可见,需要加extern.

  • 相关阅读:
    word编号变黑块
    恢复未保存的word
    协方差分析
    SAS字体变大
    可变区组长度--区组随机
    adv and disadv of oncology clinical trial endpoints
    非劣效试验界值确定
    Computer Science
    Compuer Science
    随笔
  • 原文地址:https://www.cnblogs.com/xiao0913/p/4113054.html
Copyright © 2011-2022 走看看