• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            小默

            [zz]MFC - CString類

            CString沒有基類。
            一個CString對象由可變長度的一隊字符組成。CString使用類似于Basic的語法提供函數和操作符。連接和比較操作符以及簡化的內存管理使CString對象比普通字符串數組容易使用。
            CString是基于TCHAR數據類型的對象。如果在你的程序中定義了符號_UNICODE,則TCHAR被定義為類型wchar_t,即16位字符類型;否則,TCHAR被定義為char,即8位字符類型。在UNICODE方式下,CString對象由16位字符組成。非UNICODE方式下,CString對象由8位字符組成。
            當不使用_UNICODE時,CString是多字節字符集(MBCS,也被認為是雙字節字符集,DBCS)。注意,對于MBCS字符串,CString仍然基于8位字符來計算,返回,以及處理字符串,并且你的應用程序必須自己解釋MBCS的開始和結束字節。
            CString對象還具有下列特征:
            · CString可作為連接操作的結果而增大。
            · CString對象遵循“值語義”。應將CString看作是一個真實的字符串而不是指向字符串的指針
            · 你可以使用CString對象任意替換const char*和LPCTSTR函數參數。
            · 轉換操作符使得直接訪問該字符串的字符就像訪問一個只讀字符(C-風格的字符)數組一樣。
            提示:如果可能的話,應在框架中而不是堆中分配這個CString對象。這可以節省內存并簡化參數的傳遞。
            CString允許兩個具有相同值的字符串共享相同的緩沖空間,這有助于你節省內存空間。但是,如果你初始直接改變該緩沖的內容(不使用MFC),則有可能在無意中改變了兩個字符串。CString提供了兩個成員函數CString::LockBuffer和CString::UnlockBuffer來幫助你保護你的數據。當你調用LockBuffer時,你就創建了一個字符串的一個拷貝,然后將引用計數設置為-1,這就“加鎖”了該緩沖區。當緩沖區被加鎖時,就沒有其它的字符串可以引用該字符串中的數據,被加鎖的字符串也不能引用其它字符串的數據。通過加鎖該緩沖區內的字符串,就可以保證該字符串對數據的持續獨占。當你使用完數據后,調用UnlockBuffer來將引用計數恢復為1。
            更多的信息,參見“Visual C++程序員指南”中的“MFC字符串”和“字符串:Unicode和多字節字符集(MBCS)支持”,以及“Microsoft Visual C++庫參考”中的“Microsoft Visual C++ 6.0運行庫參考”。
            #include <afx.h>

            CString類成員

            構造
            CString 以各種方法構造一個CString對象

            字符串數組
            GetLength 返回CString對象中的字符數。對多字節字符,按8位字符計算;即在一個多字節字符中一個開始和結束字節算作兩個字符
            IsEmpty 測試一個CString對象中是否不含有字符
            Empty 強制一個字符串的長度為0
            GetAt 返回在給定位置的字符
            operator [] 返回在給定位置的字符--它是代替GetAt的操作符
            SetAt 設置給定位置上的字符
            operator LPCTSTR 像訪問一個C風格的字符串一樣,直接訪問保存在一個CString對象中的字符

            分配/串聯
            operator = 給CString對象賦一個新值
            operator + 連接兩個字符串并返回一個新字符串
            operator += 把一個新字符串連接到一個已經存在的字符串的末端

            比較
            operator 比較操作符 比較操作符(大小寫敏感)
            Compare 比較兩個字符串(大小寫敏感)
            CompareNoCase 比較兩個字符串(不區分大小寫)
            Collate 比較兩個字符串(大小寫敏感,使用現場特別信息)
            CollateNoCase 比較兩個字符串(不區分大小寫,使用現場特別信息)

            提取
            Mid 提取一個字符串的中間一部分(類似于BASIC的MID$函數)
            Left 提取一個字符串的左邊一部分(類似于BASIC的LEFT$函數)
            Right 提取一個字符串的右邊一部分(類似于BASIC的RIGHT$函數)
            SpanIncluding 提取一個字符串,該子字符串中僅含有某一字符集合中的字符。
            SpanExcluding 提取一個字符串,該子字符串中不含有某一字符集合中的字符。

            其他轉換
            MakeUpper 將字符串中的所有字符轉換為大寫字符
            MakeLower 將字符串中的所有字符轉換為小寫字符
            MakeReverse 將字符串中的字符以倒序排列
            Replace 用其它字符替換指定的字符
            Remove 從一個字符串中移走指定的字符
            Insert 在字符串中的給定索引處插入一個字符或一個子字符串
            Delete 從一個字符串中刪除一個或多個字符
            Format 像sprintf函數一樣格式化該字符串
            FormatV 像vprintf函數一樣格式化該字符串
            TrimLeft 將字符串中前面的空格整理出字符串
            TrimRight 將字符串中結尾的空格整理出字符串
            FormatMessage 格式化一個消息字符串

            搜索
            Find 在一個較大的字符串中查找字符或子字符串
            ReverseFind 在一個較大的字符串中從末端開始查找某個字符
            FindOneOf 查找與某個字符集合中的字符相匹配的第一個字符

            歸檔/存儲
            operator << 把一個CString對象插入一個存檔或轉儲的環境中
            operator >> 從一個存檔中提取一個CString對象

            緩沖區訪問
            GetBuffer 返回一個指向CString對象的指針
            GetBufferSetLength 返回一個指向CString對象的指針,字符串被截斷為指定的長度
            ReleaseBuffer 釋放對GetBuffer所返回的緩沖區的控制權
            FreeExtra 通過釋放原先為此字符串分配的額外內存來刪除此字符串對象的額外開銷
            LockBuffer 使引用計數無效并保護緩沖區內的數據
            UnlockBuffer 使引用計數有效并釋放緩沖區中的數據

            Windows專用
            AllocSysString 由CString數據分配一個BSTR
            SetSysString 使用CString對象中的數據來設置一個已存在的BSTR
            LoadString 從一個Windows資源中加載一個已經存在的CString對象
            AnsiToOem 實現由ANSI字符集到OEM字符集的對應轉換
            OemToAnsi 實現由OEM字符集到ANSI字符集的對應轉換

            posted on 2009-10-23 16:07 小默 閱讀(1424) 評論(0)  編輯 收藏 引用 所屬分類: Language

            導航

            統計

            留言簿(13)

            隨筆分類(287)

            隨筆檔案(289)

            漏洞

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            一本色综合久久| 94久久国产乱子伦精品免费 | 99久久免费只有精品国产| 国产午夜精品久久久久免费视| 久久精品国产亚洲AV蜜臀色欲| 精品多毛少妇人妻AV免费久久| 久久久久久国产a免费观看黄色大片| 中文字幕久久精品无码| 91精品国产色综合久久| 中文字幕亚洲综合久久2| 色妞色综合久久夜夜| 国产精品99久久免费观看| 久久精品无码免费不卡| 久久精品国产亚洲AV无码麻豆| 久久精品这里只有精99品| 久久影视综合亚洲| 国产精品久久久久aaaa| 精品国产日韩久久亚洲| 精品久久久久久无码免费| 久久久午夜精品福利内容| 国产午夜福利精品久久| 97久久超碰国产精品旧版| 久久综合给合久久狠狠狠97色| 色综合合久久天天给综看| 精品国产福利久久久| 久久久噜噜噜久久熟女AA片| 亚洲精品高清久久| 国产午夜久久影院| 国产亚洲欧美成人久久片| 久久99精品久久久久久动态图| 精品国产乱码久久久久久人妻 | 亚洲伊人久久大香线蕉苏妲己| 久久精品国产亚洲AV香蕉| 久久久久久毛片免费看| 亚洲狠狠综合久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久精品国产免费观看 | 亚洲精品乱码久久久久久蜜桃| 色综合久久中文综合网| 精品久久久久久国产潘金莲| 日韩久久久久久中文人妻|