Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> контроль границ 
:(
    Опции темы
555shiro
Дата 7.5.2010, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 3.1.2010

Репутация: нет
Всего: нет



доброе время суток!
  подскажите пожалуйста что ознчают некоторые слова в данном коде?
для удобства я их выделил


Код

#include <iostream.h>
#include <stdlib.h>
class array {
int size;
char *p;
public:
array(){p=NULL;}
array(int num);
    ~array (){if(p)delete[]p;}    //  здесь деструктор...который по моему удаляет элемент указателя... 
 
    char& put(int i);  // 

     char get(int i);   //

};
 
array::array (int num  )  //
{
        p=new char[num];
        if(!p)
        {       cout<<"oshibka";
                exit(1);     //это ознчает выход из програмы..а почему в скобках именно число 1 ?
        }
        size=num;
}
 
char & array::put(int i)
{
        if(i<0 || i>=size)
        {
                cout<<"naryshenie graniz";
                exit(1);
        }
        return p[i];
}
 
char array :: get(int i)
{
        if(i<0 || i>=size)
        {
                cout <<"oshibka v narushenii graniz";
                exit(1); 
        }
        return p[i];
}
int main()
{
        array a(10);
        a.put(3)='x';
        a.put(2)='r';
        cout<<a.get(3)<<a.get(2)<<"\n";
        a.put(11)='!';
        return 0;
}


Модератор: пользуясь кнопочкой "Код" не забывай выставлять правильный язык программирования

Это сообщение отредактировал(а) bsa - 7.5.2010, 20:37
PM MAIL   Вверх
toxx
Дата 7.5.2010, 10:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: 4
Всего: 13



Удаляет массив т.к. [] как ты выделяешь память так её и удаляешь

выделил
Код

 p=new char[num];

удалил
Код

~array (){if(p)delete[]p;}    //  здесь деструктор...который по моему удаляет элемент указателя... 


Код

exit(1);     //это ознчает выход из програмы..а почему в скобках именно число 1 ?


http://cplusplus.com/reference/clibrary/cstdlib/exit/
PM MAIL   Вверх
bsa
Дата 7.5.2010, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



555shiro
Это объявления методов класса array:
Код
array(int num);
array(){p=NULL;} //это объявление и реализация встраиваемого (inline) метода
char& put(int i);
char get(int i);
Это реализация метода array(int num) (конструктора) класса array:
Код
array::array (int num  )
{
...
}
Тут array:: значит принадлежность классу array.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0488 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.