C++基础--string类的operator[]/at/back/front
2015-09-03 18:10
507 查看
1. string类的operator[]/at/back/front
1.1 std::string::operator[]
原型: const char& operator[](size_t n) const;功能: 返回源字符串下标为n处的字符的引用。
说明: 不能被修改。
原型:char& operator[](size_t n);
功能: 返回源字符串下标为n处的字符的引用。
说明: 可以被修改。
代码示例:
#include <iostream> #include <string> using namespace std; int main () { const string str1("Test string");//const char &operator[](size_t n) const; for (unsigned i=0; i<str1.length(); i++) { //str1[i]='a'; cout<<str1[i]; } cout<<endl; string str2("Test string");//char &operator[](size_t n); for (unsigned i=0; i<str2.length(); i++) { str2[i]='a'; cout<<str2[i]; } cout<<endl; system("pause"); return 0; } =>Test string aaaaaaaaaaa
1.2 std::string::at
原型: const char& at (size_t pos) const;功能: 返回源字符串下标为n处的字符的引用。
说明: 不能被修改。
原型:char& at (size_t pos);
功能: 返回源字符串下标为n处的字符的引用。
说明: 可以被修改。
代码示例:
#include <iostream> #include <string> using namespace std; int main () { const string str1("Test string");//const char &operator[](size_t n) const; for (unsigned i=0; i<str1.length(); i++) { //str1.at(i)='a'; cout<<str1.at(i); } cout<<endl; string str2("Test string");//char &operator[](size_t n); for (unsigned i=0; i<str2.length(); i++) { str2.at(i)='a'; cout<<str2.at(i); } cout<<endl; system("pause"); return 0; } =>Test string aaaaaaaaaaa
1.3 std::string::back
原型: const char& back() const;功能: 返回源字符串最后一个字符的引用。
说明: 不能被修改。
原型:char& back();
功能: 返回源字符串最后一个字符的引用。
说明: 可以被修改。
代码示例:
#include <iostream> #include <string> using namespace std; int main() { string str ("hello world"); //const char& c1 = str.back(); //c1 = '!'; char& c2 = str.back(); c2 = '!'; cout<<str<<endl; system("pause"); return 0; } =>hello world!
1.4 std::string::front
原型: const char& front() const;功能: 返回源字符串第一个字符的引用。
说明: 不能被修改。
原型:char& front();
功能: 返回源字符串第一个字符的引用。
说明: 可以被修改。
代码示例:
#include <iostream> #include <string> using namespace std; int main() { string str ("hello world"); //const char& c1 = str.front(); //c1 = '!'; char& c2 = str.front(); c2 = 'H'; cout<<str<<endl; system("pause"); return 0; } =>Hello world
参考文献:
[1] 网络资源: /]http://www.cplusplus.com/reference/string/string/operator[]/
http://www.cplusplus.com/reference/string/string/at/
http://www.cplusplus.com/reference/string/string/back/
http://www.cplusplus.com/reference/string/string/front/
相关文章推荐
- C++基础---string类的data/c_str/copy
- C++基础---string类的构造函数
- 来看看C语言的-1>1并且小有1的问题
- C++基础---字符串(string型字符串)
- c语言实现顺序二叉树的非递归的三种遍历算法
- 【C语言】结构体
- C++内存管理及指针相关
- C++入门经典 笔记 (第十章)创建指针
- Qt C++中的关键字explicit
- 零基础学C语言 笔记八 二维数组
- C语言中文件包含#include使用尖括号和双引号的区别
- C++入门经典 笔记 (第九章)高级类
- c++中输入和输入语句
- c++ primer读书笔记之c++11(三)
- C语言实验题——三个数排序
- VS2010中“工具>选项中的VC++目录编辑功能已被否决”解决方法
- 关于C++中的友元函数的总结
- 关于C语言中的cons的使用。
- 零基础学C语言 笔记七 一维数组
- C++入门经典 笔记 (第八章)创建基本类