中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++ string類的構造函數有哪些

c++
小樊
87
2024-08-28 02:28:53
欄目: 編程語言

C++中的std::string類包含了多種構造函數,可以方便地初始化字符串。以下是一些常見的std::string構造函數:

  1. 默認構造函數
std::string();

創建一個空字符串,即長度為0的字符串。 2. 從C風格字符串構造

std::string(const char* s);

使用以’\0’結尾的C風格字符串s來初始化std::string對象。 3. 指定長度的C風格字符串構造

std::string(const char* s, size_t n);

使用C風格字符串s的前n個字符來初始化std::string對象。這里不需要以’\0’結尾。 4. 復制構造函數

std::string(const std::string& str);

通過復制另一個std::string對象str來初始化新的std::string對象。 5. 子字符串構造

std::string(const std::string& str, size_t pos, size_t len = npos);

str中提取一個子字符串,從位置pos開始,長度為len。如果未指定len或者len大于str的剩余長度,則子字符串將一直擴展到str的末尾。 6. 填充構造函數

std::string(size_t n, char c);

創建一個長度為n的字符串,其中每個字符都被初始化為c。 7. 通過迭代器構造

template<class InputIt>
std::string(InputIt first, InputIt last);

使用由迭代器firstlast指定的字符范圍來初始化字符串。注意,這是一個模板構造函數,可以接受任何類型的迭代器。 8. 移動構造函數

std::string(std::string&& str) noexcept;

通過“移動”而非復制的方式,從另一個std::string對象str來初始化新的std::string對象。這通常會使得原始字符串變為空,并且操作是高效的。 9. 初始化列表構造函數

std::string(std::initializer_list<char> il);

使用一個初始化列表il來初始化字符串。例如:std::string s = {'a', 'b', 'c'};

以上就是C++中std::string類的一些常見構造函數。

0
阜城县| 西林县| 云龙县| 乡宁县| 伊金霍洛旗| 襄城县| 安吉县| 木里| 澄江县| 垦利县| 略阳县| 吉首市| 新疆| 扎囊县| 庆安县| 措美县| 黄浦区| 余庆县| 平乡县| 青岛市| 新宁县| 梧州市| 德化县| 浪卡子县| 米易县| 韶关市| 观塘区| 南宁市| 东安县| 鞍山市| 浦东新区| 曲靖市| 德格县| 贺兰县| 疏附县| 南宫市| 安西县| 齐河县| 福泉市| 石楼县| 吉水县|