⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p9_5.cpp

📁 相当丰富的C++源码
💻 CPP
字号:
/********************************************
*   p9_5.cpp                                *
*  重载下标运算符[ ]为类的成员函数的字符串类*
********************************************/
#include <iostream>
using namespace std;
class String {
    private:
      char *Str;
	  int len;
	public: 
    void ShowStr()
	{
		cout<<"string:"<<Str<<",length:"<<len<<endl;
	}
	String(const char *p=NULL)
	{
		if (p) 
		{
		   len=strlen(p);
		   Str=new char[len+1];
		   strcpy(Str,p);
		} else 
		{
		   len=0;
		   Str=NULL;
		}
	}
	~String()
	{
		if (Str!=NULL)
		   delete [] Str;
	}
   char &operator[](int n)             //重载运算符[], 处理String对象
   {   
	   return *(Str+n);   
   }  
   const char &operator[](int n)const //重载运算符[],处理const String对象
   {   
	   return *(Str+n);   
   }   
};
void main(void)
{   
	String S1("0123456789abcdef");
	S1.ShowStr();
	S1[10]='A';
	cout<<"after S1[10]=A"<<endl;
    S1.ShowStr();
    const String S2("ABCDEFGHIJKLMN");
    cout<<"S2[10]="<<S2[10]<<endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -