zoukankan      html  css  js  c++  java
  • CString

    CString gray("Gray");
    CString cat("Cat");
    CString graycat = gray + cat;
     
    与其用 sprintf() 函数或 wsprintf() 函数来格式化一个字符串,还不如用 CString 对象的Format()方法:
    CString s;
    s.Format(_T("The total is %d"),total);
    用这种方法的好处是你不用担心用来存放格式化后数据的缓冲区是否足够大,这些工作由CString类替你完成。
    格式化是一种把其它不是字符串类型的数据转化为CString类型的最常用技巧,比如,把一个整数转化成CString类型,可用如下方法:
    CString s;
    s.Format(_T("%d"),total);
    我总是对我的字符串使用_T()宏,这是为了让我的代码至少有Unicode的意识,当然,关于Unicode的话题不在这篇文章的讨论范围。_T()宏在8位字符环境下是如下定义的:
    #define _T(x) x // 非Unicode版本(non-Unicode version)
    而在Unicode环境下是如下定义的:
    #define _T(x) L##x // Unicode版本(Unicode version)
    所以在Unicode环境下,它的效果就相当于:
    s.Format(L"%d",total);
    如果你认为你的程序可能在Unicode的环境下运行,那么开始在意用 Unicode 编码。比如说,不要用 sizeof() 操作符来获得字符串的长度,因为在Unicode环境下就会有2倍的误差。我们可以用一些方法来隐藏Unicode的一些细节,比如在我需要获得字符长度的时候,我会用一个叫做DIM的宏,这个宏是在我的dim.h文件中定义的,我会在我写的所有程序中都包含这个文件:
    #define DIM(x) (sizeof((x)) / sizeof((x)[0]))
     
     
     
    http://baike.baidu.com/link?url=5lV7l45FkyWd2Gy57f4_NweHS2ooQfpQiUvPxjD-7N2M4PzgDBSUpTxVDyzL1H_MvkATFOqRi9wMXCVg6_nKWK#6_1
  • 相关阅读:
    Ubuntu 12.10下为Firefox安装Adobe Flash Player
    oracle同时操作两个实例,如何进行切换操作?
    Ubuntu 12.10下为Firefox安装Adobe Flash Player
    Ubuntu11.10 安装oracle 11g
    oracle忘记system和sys账户的密码怎么办?
    linux 搭建java开发环境
    Oracle 笔记 day04
    节约网络带宽的设计策略
    集群化服务器
    01 基础概念(实战Linux Shell编程与服务器管理)
  • 原文地址:https://www.cnblogs.com/yangai/p/5098110.html
Copyright © 2011-2022 走看看