ch21_3.cpp
来自「本文档是(作者:钱能)《C++程序设计教程》系列的部分辅助代码。 选题编辑:张」· C++ 代码 · 共 52 行
CPP
52 行
//**********************
//** ch21_3.cpp **
//**********************
#include <iostream.h>
#include <string.h>
class String{
public:
String(char*, int);
class Range{ //异常类1
public:
Range(int j):index(j){}
int index;
};
class Size{}; //异常类2
char& operator[](int k)
{
if(0<=k && k<len)
return p[k];
throw Range(k);
}
private:
char* p;
int len;
static int max;
};
int String::max = 20;
String::String(char* str, int si)
{
if(si<0 || max<si)
throw Size();
p=new char[si];
strncpy(p, str, si);
len=si;
}
void g(String& str)
{
int num=10;
for(int n=0; n<num; n++)
cout <<str[n];
cout <<endl;
}
void f()
{
//代码区1
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?