string類也是當年我校招的時候很多公司的筆試必出題,話不多說,直接上**。
#include
using
namespace std;
//直接宣告類。
class
string
string::
string
(const
char
* str)
else
}string::
string
(const string& str)
//拷貝構造也屬於建構函式,所以無返回值。
string::string&
operator=(
const string& str)
//賦值操作函式一定有返回值
delete m_data;
//釋放原來的記憶體
int len = str.
length()
; m_data =
newchar
[len +1]
;strcpy
(m_data, str.m_data)
;//m_data已經存放了資料
return
*this
;//所以返回類物件的引用,this指標的值*this
}string::
~string()
順帶記個知識點。
char* m_data = 「dfghjk」;//求m_data大小的方法為: strlen(m_data)。結果為6。屬於c風格的字串。
string ss = 「dfghjk」; //求ss大小的方法為:ss.length();結果為6,。類物件直接呼叫length方法即可。
C 語言基礎(實現string類)
string類的實現 涉及到 拷貝構造函式呼叫的三種情況 深拷貝淺拷貝 const修飾為常函式 過載輸出 過載賦值運算子 過載下標運算子 拷貝構造函式呼叫的三種情況?1.用乙個物件初始另乙個物件 2.用物件作為實參傳遞給函式 3.函式的返回值為物件,建立臨時物件作為返回值 深拷貝在計算機中開闢了一塊...
C 語言基礎 16 string類
使用 string 類需要包含標頭檔案,下面的例子介紹了幾種定義 string 變數 物件 的方法 include include using namespace std intmain string s int len s.length cout 注意 與c不同,string末尾沒有 0 字元,所...
c 基礎 字串的處理 string類
string型別可以看作char的唯讀陣列 如 string s hello world for int i 0 ic 中字串有乙個重要的特性 不可變性,字串一旦宣告就不再可以改變,所以只能通過索引來讀取指定位置的char,不能對指定位置的char進行修改。如果要對char進行修改,那麼就必須建立乙...