Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
TamaGOch
9 / 9 / 3
Регистрация: 11.12.2012
Сообщений: 152
#1

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

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

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

Инкапсуляция строк
Приветствую! Как сделать инкапсуляцию строк? Например: Допустим, для целых...

Класс "Текст" (массив строк) для ограниченного числа строк
Здравствуйте, мне задали лабораторную и я вообще не представляю как это...

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

Класс строк
Доброго времени суток) классы вот только начал изучать, прошу сильно не бить)...

Класс строк.
Всем привет! Пишу класс строк.Возникла такая проблема..Когда перегружаю...

Класс множество строк
Здравствуйте, мне нужно написать класс множество строк. Как будет выглядеть...

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

Не по теме:

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

1
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
30.06.2013, 17:29 #6
TamaGOch, память под char* выделяется динамически. Следовательно, весь доступ к char* должен быть контролируемым: на случай, если понадобится, например, перевыделение памяти при присваивании слишком длинной строки. Выставляя наружу, получаем потенциально возможные утечки памяти.
0
30.06.2013, 17:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2013, 17:29
Привет! Вот еще темы с решениями:

Инкапсуляция
Смотрел обучающие видео , читал книжки и не понял. Инкапсуляция позволяет...

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

Инкапсуляция.
Написать программу имитирующую работу банковского счета методом инкапсуляции....

Универсальный класс для строк
Здорова господа! Есть задачка "Подумайте как можно спроектировать идеальный...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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