本文主要是介绍0829作业+思维导图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、作业
代码:
#include <iostream>
#include <string.h>
#include <stdio.h>
using namespace std;
class Mystring
{
public://无参构造Mystring():size(10){str = new char[size];cout<<"无参构造完成"<<endl;}//有参构造Mystring(const char *s):size(10){this->str = new char[size];//判空if(empty()==0){str==NULL;}//判扩容if(size <= strlen(s)){int n = strlen(s)/size;expansion(n);}strcpy(str,s);cout<<"有参构造完成"<<endl;}//析构函数~Mystring(){delete str; //释放指针的空间cout<<"Mystring析构函数"<<endl;}//判空函数bool empty(){if(str==NULL){return true;}return false;}//size函数int mysize(){return strlen(str);}//c_str函数string c_str(){return str;}//at函数char at(int n){return str[n];}//扩容void expansion(int n){size = n*size;cout<<"扩容完成"<<endl;}
private:char *str; //记录c风格的字符串int size; //记录字符串的实际长度
};int main()
{char ptr[] = " ";cin>>ptr;Mystring s1(ptr);cout<<s1.mysize()<<endl;cout<<s1.c_str()<<endl;cout<<s1.at(1)<<endl;return 0;
}
运行结果:
二、思维导图
这篇关于0829作业+思维导图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!