7.1.19 已知string类的定义,给出函数实现
2014-08-19 19:47
316 查看
class String{
public:
String(const char* str=NULL);
String(const String& another);
~String();
String& operator=(const String& rhs);
private:
char* m_data;
};
//实现:
String::String(const char*str){//默认参数声明里写,不要在定义里写。
if(str==NULL){
m_data=new char[1];
m_data[0]='\0';
}
else{
m_data=new char[strlen(str)+1];
strcpy(m_data,str);
}
}
String::String(const String& another){
m_data=new char[strlen(another.m_data)+1];
strcpy(m_data,another.m_data);
}
String::~String(){
delete[] m_data;
}
String& String::operator=(const String& rhs){//String::命名空间是用来修饰函数名的,好久不编都忘了。。
delete[]m_data;
m_data=new char[strlen(rhs.m_data)+1];
strcpy(m_data,rhs.m_data);
return *this;
}
strlen(),strcpy()在#include<cstring>。
m_data=new char[strlen(str)+1];
C++类需要复习。。。
public:
String(const char* str=NULL);
String(const String& another);
~String();
String& operator=(const String& rhs);
private:
char* m_data;
};
//实现:
String::String(const char*str){//默认参数声明里写,不要在定义里写。
if(str==NULL){
m_data=new char[1];
m_data[0]='\0';
}
else{
m_data=new char[strlen(str)+1];
strcpy(m_data,str);
}
}
String::String(const String& another){
m_data=new char[strlen(another.m_data)+1];
strcpy(m_data,another.m_data);
}
String::~String(){
delete[] m_data;
}
String& String::operator=(const String& rhs){//String::命名空间是用来修饰函数名的,好久不编都忘了。。
delete[]m_data;
m_data=new char[strlen(rhs.m_data)+1];
strcpy(m_data,rhs.m_data);
return *this;
}
strlen(),strcpy()在#include<cstring>。
m_data=new char[strlen(str)+1];
C++类需要复习。。。
相关文章推荐
- (C++)已知String类的定义,实现其函数体
- 已知String类定义,如何实现其函数体
- String类定义与部分函数实现
- 已知String类的定义,实现其函数体
- string类构造、拷贝构造、赋值、操作符函数实现及注意事项
- C++程序设计实验报告(十七)----实现冒泡排序算法,并将之定义为一个函数
- 编程练习- 尝试写出String类的成员函数实现
- what's in string? c语言string类函数实现汇总 都是学习使用指针的好例子啊(算是读书摘抄和笔记吧)
- VIM 用正则表达式实现批量函数声明到dummy定义
- 【转】 c语言string类函数实现汇总
- 请编写实现malloc()内存分配函数功能一样的代码。给出一个函数来复制两个字符串A和B。字符串A的后几个字节和字符串B的前几个字节重叠。
- 如何定义和实现一个类的成员函数为回调函数
- C++第十周【任务1】在下面一段类的定义中,需要填充的函数由注释内容给出了功能。
- c++第四周【任务1】下面设计一个三角形类,请给出各成员函数的定义
- c++ 模版函数的定义和实现放在一个文件中
- C++程序设计实验报告(二十)---实现冒泡排序算法,并将之定义为一个函数,其中参数是指向数组的指针变量
- 注意有指针参数的函数定义与函数实现 必须一致,编译器只检查是否是指针,而不管你的实参是几维指针
- 如何定义和实现一个类的成员函数为回调函数
- 如何定义和实现一个类的成员函数为回调函数
- 《第四周实验报告1-1》---一个三角形类,请给出各成员函数的定义