Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <conio.h>
- #include <locale.h>
- class vec
- {
- private:
- int _size;
- int * _error;
- unsigned long ** _elements;
- void init();
- void exception(int code);
- protected:
- public:
- vec();
- vec(int size);
- vec(int size, int &error);
- int error();
- void test();
- };
- void vec::init()
- {
- _elements = new unsigned long * [_size];
- for(int i = 0; i < _size; i++)
- {
- _elements[i] = new unsigned long;
- }
- }
- vec::vec()
- {
- _size = 1;
- init();
- }
- vec::vec(int size)
- {
- _size = size;
- init();
- }
- vec::vec(int size, int &error)
- {
- _size = size;
- _error = &error;
- }
- /* порождает заполнение перменной ошибки */
- void vec::exception(int code)
- {
- *_error = code;
- }
- /* получение кода ошибки */
- int vec::error()
- {
- return * _error;
- }
- void vec::test()
- {
- exception(123);
- }
- int main(int argc, char * argv[])
- {
- int error;
- setlocale(LC_ALL, "rus");
- /* тестируем класс */
- vec v = vec(1, error);
- v.test();
- std::cout << "Можно получить ошибку через переменную, которую задали в конструкторе: " << error << std::endl;
- std::cout << "А можно и отдельно: " << v.error() << std::endl;
- _getch();
- return 0;
- }
Add Comment
Please, Sign In to add comment