面向对象C++学习总结
洛谷日记3
2023.5
面向对象C++ : 运算符重载
1.运算符重载
(1)n定义重载运算符和定义普通函数类似,只是该函数的名字是operator@,@表示要重载的运算符。
MinInt operator-()const{ //一元运算"-"
cout<<"MinInt::operator-"<<endl;
return MinInt(-b);
}
//定义MinInt类的一元运算‘-’
C++ map
Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,是有序键值对容器,元素的键是唯一的。
2023.9
字符串函数
//string的析造函数
string str1; //生成空字符串
string str2("123456789"); //生成"1234456789"的复制品
string str3("12345", 0, 3);//结果为"123"
string str4("0123456", 5); //结果为"01234"
string str5(5, '1'); //结果为"11111"
string str6(str2, 2); //结果为"3456789"
//字符串比较函数
//"aBcd" 和 "Abcd"比较------ a > A
cout << "A.compare(B):" << A.compare(B)<< endl;
// 前面减去后面的ASCII码,>0返回1,<0返回-1,相同返回0
//字符串删除函数
str2.erase(1,6); // 结果:189
//1表示坐标,6表示长度
//字符串中的字符替换
string s1("hello,world!");
s1.replace(6,5,"girl"); // 结果:hello,girl.
//6表示坐标,5表示长度
//整型--字符串型转换
int n;
char a = to_string(n);