Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
218 / 20 / 5
Регистрация: 05.08.2010
Сообщений: 229
1

ООП

30.04.2011, 20:22. Показов 880. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! Если можно, не могли бы вы ответить на пару вопросов по ООП, а то что-то не могу понять.
Вопросы: Зачем используются такие парные определения?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct T {}; 
 
class Container 
{ 
    // ctor's 
    // cctor 
    // Container& operator = () 
    // dtor 
    // . . . 
public: 
    T& operator [] (int i) const; // {return t_[i];} 
    T& operator [] (int i); // {return t_[i];} 
//private: 
//  T* t_; 
};
Какие изменения необходимо внести в классе Container, чтоб уничтожить глюк?
C++
1
2
3
4
void  f(Container const& c) 
{ 
    c[0] = T(); // компилируется! 
}
Всем спасибо за ответы!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.04.2011, 20:22
Ответы с готовыми решениями:

ооп
Нада книгу по ооп, такую что бы было все разжевано максимально. Так, что бы я за минимум времени и...

ООП
1) Для класса символьной строки определить отношение лексикографического порядка, перегрузив с...

C++ ООП
Просьба дать какую-нибудь интересную программу, дабы теста на курс ООП. Чтобы не из книжки, а...

ООП
Подскажите статью или книгу где рассказывается про динамические списки (с...

1
34 / 34 / 8
Регистрация: 07.06.2010
Сообщений: 118
30.04.2011, 21:13 2
Цитата Сообщение от bambino Посмотреть сообщение
Зачем используются такие парные определения?
Один оператор константный, другой - нет. Const оператор нужен потому, что нельзя применять не константные методы к константным объектам. Например в конструкторе копий:
C++
1
Container(const Container& );
или в функции f из вашего кода. Параметр объявлен как константный, и к нему нельзя применить обычный operator [], только константный.
Какие изменения необходимо внести в классе Container, чтоб уничтожить глюк?
Глюка здесь нет, c[0] присваивается временный объект.
1
30.04.2011, 21:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.04.2011, 21:13
Помогаю со студенческими работами здесь

ООП на С++
Помогите пожалуйста!! Не понимаю как это сделать(( Создать программу с классом Student...

ООП
Привет всем, народ дайте какую-нибудь интересную задачку на ООП, (однообразные задачи из учебников...

ООП в С++
Здравствуйте! Ответьте пожалуйста на несколько вопросов... p.s. буду рад , если ответы будут...

ООП
Господа у меня возникло 2 вопроса по ООП т.к. только не давно начал его изучать . 1) Не как не...

ООП
Доброго времени суток. Хотелось бы получить совет по поводу следующего. Имеется базовый класс ...

ООП
Прочитал в википедии про ООП, но так толком и не понял. Подскажите, чем является создание программ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru