prog4.cpp
来自「C++语言程序设计题典」· C++ 代码 · 共 52 行
CPP
52 行
#include <iostream.h>
#include <iomanip.h>
template <class T>
class Array
{
T *elems;
int size;
public:
Array(int s); //构造函数
~Array();
T& operator[](int); //重载下标运算符
void operator=(T); //重载等号运算符
};
template <class T>
Array<T>::Array(int s)
{
size=s;
elems=new T[size];
for (int i=0;i<size;i++)
elems[i]=0;
}
template <class T>
Array<T>::~Array()
{
delete elems;
}
template <class T>
T& Array<T>::operator[](int index)
{
return elems[index];
}
template <class T>
void Array<T>::operator=(T temp)
{
for (int i=0;i<size;i++)
elems[i]=temp;
}
void main()
{
int i,n=10;
Array<int> arr1(n); //产生整数型模板类及其对象arr1
Array<char> arr2(n); //产生字符型模板类及其对象arr2
for (i=0;i<n;i++)
{
arr1[i]='a'+i; //调用重载运算符
arr2[i]='a'+i;
}
cout << " ASCII码 字符" << endl;
for (i=0;i<n;i++)
cout << setw(8) << arr1[i] << setw(8) << arr2[i] << endl;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?