C++不能自动检测数组下标是否越界,所以如果下标越界程序会直接崩溃无法执行,建立数组模板可以进行数组下标越界的检查
效果图如下 当越界时会显示插入失败的信息
程序中使用assert来进行警告处理 下标越界时就会弹出对话框警告 然后输出出现错误代码位置
源代码如下 里面还重载了[]运算符 知识点十分全面
#include<iostream>
#include<iomanip>
#include<cassert>
using namespace std;
class Date {
int imonth, iday, iyear;
char format[128];
public:
Date(int m = 0, int d = 0, int y = 0)
{
imonth = m;
iday = d;
iyear = y;
}
friend ostream& operator<<(ostream& os, const Date t) {
cout << "month" << t.imonth;
cout << "day" << t.iday;
cout << "year" << t.iyear;
return os;
}
void display()