【c++】简单的string类的几个基本函数
// string的几个基本函数的实现#include <iostream>
#include <assert.h>
#include <string.h>
using namespace std;class String
{
public:String(){_str = new char[1];_str[0] = '\0';}String(char *str){assert(str != NULL);_str = new char[strlen(str) + 1];strcpy(_str, str);}String(const String& s){_str = new char[strlen(s._str) + 1];strcpy(_str, s._str);}String& operator=(const String& s){if (this != &s){delete[] _str;_str = new char[strlen(s._str) + 1];strcpy(_str, s._str);}return *this;}~String(){delete[] _str;}
public:void getstr(){cout << _str << endl;}
private:char *_str;
};int main()
{String s;s.getstr();String s1("123");s1.getstr();String s2 = s1;s2.getstr();s = s1;s.getstr();return 0;
}
转载于:https://www.cnblogs.com/yfceshi/p/7130686.html
【c++】简单的string类的几个基本函数相关推荐
- 全面深入介绍C++字符串:string类
http://blog.csdn.net/liuliming3000/article/details/1809385 1 从C到C++ string类 2 string类的构造函数 3 string类 ...
- c++string类的相关操作
string的应用是非常典型的,下面我写了一些简单的string类的相关的一些操作,包括增删查改等一些功能和一些运算符的重载,包括他们的测试用例: #include<iostream> # ...
- 『C++』string类模拟实现
深拷贝与浅拷贝 首先来看一段代码 #include <iostream> #include <string.h> #include <assert.h>class ...
- 冰冰学习笔记:string类的简单模拟
欢迎各位大佬光临本文章!!! 还请各位大佬提出宝贵的意见,如发现文章错误请联系冰冰,冰冰一定会虚心接受,及时改正. 本系列文章为冰冰学习编程的学习笔记,如果对您也有帮助,还请各位大佬.帅哥.美女点点支 ...
- 【C++】STL——string的简单介绍、string类的访问和遍历、operator[] 、begin+ end begin 、rbegin + rend begin 、范围for
文章目录 1.string类 1.1string类对象的访问及遍历操作 (1)operator[] (2)begin+ end begin (3)rbegin + rend begin (4)范围fo ...
- Java里的字符串, String类简单介绍.
String类在java面试中也是1个常见的问题点. 所以也是写在这里方便以后查阅了. 大家都知道c语言里是没有String 字符串这个数据类型的. 只能用字符数组的1个特殊形式来表示一个字符串, 就 ...
- Java常用类之String类知识清单,简单易理解
String类基础知识 1.String类表示字符串,理解为不可变的字符序列 2.String类声明为final,不可被继承 3.String类实现了Serializable接口:表示字符串是支持序列 ...
- C++ 有关string类的基本语法以及一个简单算法 理论加案例的形式
#include<iostream> using namespace std; #include"string" //string类的头文件 #include" ...
- C++ 笔记(22)— STL string 类(字符串赋值、访问、拼接、查找、翻转、大小写转换)
1. 实例化和赋值 STL string #include <string> #include <iostream>int main () {using namespace s ...
最新文章
- oracel 不为null 保存空字符串
- 设置socket IP_TOS选项 (转载)
- AtCoder AGC029E Wandering TKHS
- Spark配置参数详解
- mysql的cpu高定位
- Open vswitch 之Qos rate-limiting 原理
- mysql慢查询的使用_mysql慢查询使用详解
- [设计] - 判断LOGO好坏的12条参考标准
- python pip下载安装一半退出_Python- 解决PIP下载安装时因为网络速度慢而导致失败的方法...
- 威纶通触摸屏与仪表通讯_【智】威纶通触摸屏与两台变频器Modbus RTU通讯案例详解...
- E大调第一个指型_初学吉他大调与对应小调的知识,看完这个就懂了
- CentOS简单上手——第四篇
- 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2
- 十款免费的Web前端开发工具
- 搜狗输入法转语音体验报告
- 【OpenCV】人脸检测和识别
- Android中从视频中提取音频
- NID修改数据库名称时候碰到NID-00137
- 数据集:UCI【UC Irvine Machine Learning Repository】
- 【原创】Ubuntu 下使用 NCverilog 仿真 Verilog 工程
热门文章
- 聊一聊你了解的程序猿是什么样的?
- 学习web前端开发大半年,迷茫了,感觉什么都没学会怎么破?
- 初级前端如何突破瓶颈
- centos 日志切割_CentOS Linux使用logrotate分割管理日志
- mysql半连接_MySQL优化案例:半连接(semi join)优化方式导致的查询性能低下(转载)...
- python列表大于60_Python使用filter如何对给定列表中的数字进行过滤,保留大于等于60的数字?...
- python什么是堆什么是栈_顶置篇:CPython的内存概念:栈、堆和引用
- java单链表基本操作 一,Java_实现单链表-基本操作
- 天合光能环卫机器人_无人驾驶已在南京多个领域落地!无人环卫,离全面落地还有多久...
- RNN隐藏层的两种计算方法GRU和LSTM