改写String类别

主要4默认功能重写:

代码:

#include <iostream>

using namespace std;

class Cstring{
private :
	char * data;
public :
	Cstring(const char * str =NULL);
	Cstring(const Cstring &another);
	~Cstring();	

	Cstring & operator=(const Cstring &another);

};
//赋值构造函数
Cstring & Cstring::operator=(const Cstring &another){
	if(this  == &another)
		return *this;
	delete [] data;
	data = NULL;
	data = new char(strlen(another.data) + 1 );
	strcpy(data,another.data);
    	return * this;
}
//普通构造函数
Cstring::Cstring(const char *str){
	if(str == NULL){
		data = new char[1];
		data[0] = '\0';
	}else{
		data = new char[strlen(str)+1];
		strcpy(data,str);
	}
}
//拷贝构造函数
Cstring::Cstring(const Cstring & another){
	data = new char(strlen(another.data) + 1);
	strcpy(data,another.data);
}
//析构函数
Cstring ::~Cstring(){
	delete data;
}

void main(){
	Cstring str("hello,world");
	Cstring st(str),test2;
	Cstring test1 = test2 = st;
}

版权声明:本文博客原创文章,转载请注明出处 http://blog.csdn.net/buyingfei8888

时间: 2024-08-01 20:12:24

改写String类别的相关文章

String.valueOf() 方法的使用

缺心眼的公牛 我每天都在成长和进步 1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下列几种 String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串 String.valueOf(char c) : 将 char 变量 c 转换成字符串 String.valueOf(char[] data) : 将 ch

Java中String.valueOf()方法的解释

1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下列几种 String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串 String.valueOf(char c) : 将 char 变量 c 转换成字符串 String.valueOf(char[] data) : 将 char 数组 data 转换成字符串 

其他数据类型转换成String

基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下列几种 String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串 String.valueOf(char c) : 将 char 变量 c 转换成字符串 String.valueOf(char[] data) : 将 char 数组 data 转换成字符串 Strin

String.valueOf() ,其他类型转为字符型

1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下列几种 String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串 String.valueOf(char c) : 将 char 变量 c 转换成字符串 String.valueOf(char[] data) : 将 char 数组 data 转换成字符串 

Java string.valueof的用法以及与parseint的区别

一.由基本数据型态转换成String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 ,也就是 String.valueOf() 这个参数多载的方法 有以下几种 (1)String.valueOf(boolean b) : 将 boolean 变量 b 转换成字符串 (2)String.valueOf(char c) : 将 char 变量 c 转换成字符串 (3)String.valueOf(char[] data) : 将 char 数组 data

Java String构造方法

感谢大神: https://www.cnblogs.com/JavaSubin/p/5450849.html 2,常见构造方法 public String():空构造 public String(byte[] bytes):把字节数组转成字符串 public String(byte[] bytes,int index,int length):把字节数组的一部分转成字符串 public String(char[] value):把字符数组转成字符串 public String(char[] val

中国象棋棋子及棋盘的绘制

一.题目简介 本课程设计主要是使用Swing这个Java自带的图形开发工具实现中国象棋棋子及棋盘的绘制,并根据相应的象棋规则,可以设计棋谱,完成棋谱的保存和对已保存的棋谱的演示,方便现在爱棋人士对残局的收藏于研究,而且达到了进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性,熟练的应用面向对象的思想和设计方法解决实际问题的能力的目的. 1.当两方有一方将(帅)被吃掉后,程序不能自动结束或提示游戏结束,但想到该程序并不是要进行两方对弈,而是要设计棋谱所以在能力实现范围内

《C++标准程序库》笔记之二

本篇博客笔记顺序大体按照<C++标准程序库(第1版)>各章节顺序编排. -------------------------------------------------------------------------------------------- 6. STL 容器 6.1-1 本节讲述STL容器的共通能力.其中大部分都是必要条件,所有STL容器都必须满足那些条件.三个最最核心的能力是: (1)所有容器提供的都是“value语意”而非“reference语意”.容器进行元素的安插操作

C#习题大全

C#习题大全 1.String str=new String("a")和String str = "a"有什么区别? String str = "a"; 这个只是一个引用,内存中如果有“a"的话,str就指向它,如果没有才创建如后还用到"a"这个字符串的话并且是这样用: String str1 = "a"; String str2 = "a"; String str2 = &q