// arrover1.cpp // демонстрация создания безопасного массива, проверяющего // свои индексы при использовании // используются отдельные функции для установки и получения значения #include using namespace std; #include // для функции exit const int LIMIT = 100; // размер массива /////////////////////////////////////////////////////////// class safearray { private: int arr [ LIMIT ]; public: // установка значения элемента массива void putel ( int n, int elvalue ) { if ( n < 0 || n >= LIMIT ) { cout << "\nОшибочный индекс!"; exit ( 1 ); } arr [ n ] = elvalue; } // получение значения элемента массива int getel ( int n ) const { if ( n < 0 || n >= LIMIT ) { cout << "\nОшибочный индекс!"; exit ( 1 ); } return arr [ n ]; } }; /////////////////////////////////////////////////////////// int main ( ) { safearray sa1; // задаем значения элементов for ( int j = 0; j < LIMIT; j++ ) sa1.putel ( j, j * 10 ); // показываем элементы for ( j = 0; j < LIMIT; j++ ) { int temp = sa1.getel ( j ); cout << "Элемент " << j << " равен " << temp << endl; } return 0; }