首页 > 编程语言 >面向对象C++学习总结

面向对象C++学习总结

时间:2023-11-30 11:55:53浏览次数:34  
标签:总结 string 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);	

标签:总结,string,C++,运算符,面向对象,重载,函数
From: https://www.cnblogs.com/robber-is-best/p/17866967.html

相关文章

  • 数字图像处理八九章学习总结
    数字图像处理8.数字形态学图像处理8.1背景&基础(1)基本思想:选择具有一定尺寸和形状的结构元素度量,并提取其相关形状结构图像分量,以达到对图像分析和识别的目的。(2)并集A∪B、交集A∩B、补集Ac、差集A-B、映射、平移(A)z(3)结构元素:一个由0值和1值组成的矩阵。每个......
  • C++ CryptoPP使用AES加解密
    Crypto++(CryptoPP)是一个用于密码学和加密的C++库。它是一个开源项目,提供了大量的密码学算法和功能,包括对称加密、非对称加密、哈希函数、消息认证码(MAC)、数字签名等。Crypto++的目标是提供高性能和可靠的密码学工具,以满足软件开发中对安全性的需求。高级加密标准(Advanc......
  • C++中如何使用内存文件
    #include<iostream>#include<strstream>usingnamespacestd;intmain(){charszBuf[16]={"helloworld!"};std::strstreambufmemo(szBuf,sizeof(szBuf));std::istreamss(&memo);ss.seekg......
  • C++ 11 关键字:thread_local
    thread_local是C++11新引入的一种存储类型,它会影响变量的存储周期。C++中有4种存储周期:automaticstaticdynamicthread有且只有thread_local关键字修饰的变量具有线程(thread)周期,这些变量在线程开始的时候被生成,在线程结束的时候被销毁,并且每一个线程都拥有一个独......
  • 解决VS编译C++时,该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Uni
    使用VS编译C++时,报错: warningC4819:该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为Unicode格式以防止数据丢失。利用VS的高级保存选项,修改合适的编码规则即可解决,最新版VS需要手动添加高级保存选线的命令,方法如下:打开工具-->自定义 选择命令-->选择添......
  • 实验四-现代C++标准库与类模板
    TextCoder.hpp1#include<string>23classTextCoder{4private:5std::stringtext;67voidencoder(){8for(char&c:text){9if(c>='a'&&c<='z'){10......
  • UML与面向对象程序设计原则
    软件设计                 石家庄铁道大学信息学院 实验1:UML与面向对象程序设计原则本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图;2、理解面向对象程序设计原则。 [实验任务一]:U......
  • 第九周Linux课后总结
    5.1初始进程什么是进程?进程是已启动的可执行程序的运行实例。进程有以下组成部分。已分配内存的地址空间。安全属性,包括所有权凭据和特权。程序代码的一个或多个的执行线程。进程状态。每个进程都有唯一的进程标识PID,一个PID只能标识一个进程。(使用pidof命令查看sshd进......
  • C++ 通过CryptoPP计算Hash值
    Crypto++(CryptoPP)是一个用于密码学和加密的C++库。它是一个开源项目,提供了大量的密码学算法和功能,包括对称加密、非对称加密、哈希函数、消息认证码(MAC)、数字签名等。Crypto++的目标是提供高性能和可靠的密码学工具,以满足软件开发中对安全性的需求。该库包含了许多常见......
  • C++随机数random库 介绍及应用
    一、摘要随机数可以应用在很多场景下如游戏抽卡、抽奖、场景生成、洗牌,歌曲app中的随机播放,社交app中的匹配等以及随机化算法。以下是针对C中随机函数rand、C++random库使用的总结,以及一些随机应用例子二、C/C++中的rand函数使用时需要引入头文件<stdlib.h>该函数返回一个......