Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
#1

Класс строк, необходима ли инкапсуляция? - C++

30.06.2013, 17:03. Просмотров 274. Ответов 5
Метки нет (Все метки)

Волнует такой вот вопрос, писал класс строк с целью перегрузки операторов, в качестве полей класса: массив char'ов и целочисленный тип, хранящий длину. Есть два варианта использования: загнать поля в private и при необходимости получать копию массива char'ов функцией а-ля char* Get_String (). Ну или хранить как открытое поле, и обращаться напрямую через объект. Вполне ли оправдана вторая идея, если принимать во внимание желание уменьшить количество запросов и освобождения динамической памяти, ну и честное слово не портить открытые поля =))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2013, 17:03     Класс строк, необходима ли инкапсуляция?
Посмотрите здесь:

Инкапсуляция. C++
C++ Инкапсуляция в ООП и C++
C++ инкапсуляция
C++ wxDev-C++ и инкапсуляция
C++ Класс строк.
Класс строк с различными функциями C++
C++ Инкапсуляция. классы
C++ Наследование и инкапсуляция в C++
C++ Класс строк
C++ Инкапсуляция строк
Класс динамический массив строк C++
C++ Класс множество строк

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
iv-a
15 / 15 / 0
Регистрация: 25.06.2013
Сообщений: 63
30.06.2013, 17:07     Класс строк, необходима ли инкапсуляция? #2
ой, да если программа маленькая, для себя делаете, то можно вообще без private. Пусть все будет public. ничего страшного в этом нет. главное сам ничего не испорть
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
30.06.2013, 17:09  [ТС]     Класс строк, необходима ли инкапсуляция? #3
iv-a, спасибо, тоже так подумал
Croessmah
Модератор
Эксперт CЭксперт С++
12884 / 7270 / 810
Регистрация: 27.09.2012
Сообщений: 17,964
Записей в блоге: 2
Завершенные тесты: 1
30.06.2013, 17:22     Класс строк, необходима ли инкапсуляция? #4
Цитата Сообщение от iv-a Посмотреть сообщение
ой, да если программа маленькая, для себя делаете, то можно вообще без private.
Нужно с самого начала учиться писать АТД, а не полуклассы
Цитата Сообщение от TamaGOch Посмотреть сообщение
Вполне ли оправдана вторая идея, если принимать во внимание желание уменьшить количество запросов и освобождения динамической памяти, ну и честное слово не портить открытые поля =))
Если Вы сомневаетесь какой тип доступа выбрать, выбирайте всегда более закрытый.
Jupiter
30.06.2013, 17:26
  #5

Не по теме:

Цитата Сообщение от iv-a Посмотреть сообщение
ой, да если программа маленькая, для себя делаете, то можно вообще без private. Пусть все будет public. ничего страшного в этом нет. главное сам ничего не испорть
в это же время в другой теме :
Цитата Сообщение от iv-a Посмотреть сообщение
а почему получаются вот такие огромные циклы, с чем это связано? это плохие знания в программировании или что-то еще? извиняюсь, что немного не по теме спрашиваю. уж очень интересно)

0x10
2456 / 1628 / 238
Регистрация: 24.11.2012
Сообщений: 4,003
30.06.2013, 17:29     Класс строк, необходима ли инкапсуляция? #6
TamaGOch, память под char* выделяется динамически. Следовательно, весь доступ к char* должен быть контролируемым: на случай, если понадобится, например, перевыделение памяти при присваивании слишком длинной строки. Выставляя наружу, получаем потенциально возможные утечки памяти.
Yandex
Объявления
30.06.2013, 17:29     Класс строк, необходима ли инкапсуляция?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru