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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Виктор_Сен
33 / 26 / 1
Регистрация: 01.08.2011
Сообщений: 176
#1

Свойства в СИ++ - C++

04.09.2011, 13:35. Просмотров 1603. Ответов 8
Метки нет (Все метки)

Вот что хотел спросить. Когда я программировал в Делфи, там у объектов были свойства, и когда присваиваешь значение свойству, на самом деле вызывается метод, это сделано для инкапсуляции. А в книжках по си++ я что-то такого не нашёл. Не ужели в си++ нет такой удобной вещи?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.09.2011, 13:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Свойства в СИ++ (C++):

Директивы и их свойства - C++
Ребят вопрос в том что в учебниках пишут мол в случае чего смотрите в директиве какие там есть методы встроенные и изучайте их . Сами...

Свойства Button - C++
Как в C++ Builder 6 сделать кнопку Button недоступной для нажатия?

Свойства отношений - C++
Задали написать программу, которая проверяет свойство отношения: антисимметрия. Проблема в том, что я не могу понять алгоритм самой...

Свойства vector - C++
Есть код Он (по идее) должен раскладывать уравнения на элементы. К примеру: а + б + в вывод: а б в Для удобства хранения...

Свойства наследования - C++
1) Объект класса-потомка может вызывать некоторые методы класса-предка. 2) Наследование - это механизм получения нового класса на основе...

приватные свойства - C++
Здравствуйте уважаемые форумчане, не так давно начал собственносильно изучать С++. Подскажите мне темному если определен класс class...

8
pincet
1249 / 821 / 91
Регистрация: 23.07.2010
Сообщений: 4,223
04.09.2011, 13:38 #2
C++ - язык программирования. Delphi - IDE. Пробуй Borland C++ Builder
0
Евгений М.
1036 / 977 / 54
Регистрация: 28.02.2010
Сообщений: 2,829
Завершенные тесты: 2
04.09.2011, 13:42 #3
Цитата Сообщение от Виктор_Сен Посмотреть сообщение
Не ужели в си++ нет такой удобной вещи?
В стандарте C++98 такого нет.
Такая вещь присутствует в C++/CLI.
0
rangerx
1935 / 1544 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
04.09.2011, 14:50 #4
Виктор_Сен, в C++ нет свойств. Их можно реализовать(до некоторой степени) средствами самого языка, но так обычно никто не делает )) В С++ геттеры и сеттеры, в отличии от Delphi(в котором они связываются со свойством), используются напрямую.

Добавлено через 1 минуту
Цитата Сообщение от pincet Посмотреть сообщение
Delphi - IDE
И язык программирования, и IDE.
1
diagon
Higher
1930 / 1196 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
04.09.2011, 16:36 #5
Цитата Сообщение от rangerx Посмотреть сообщение
И язык программирования, и IDE.
А разве язык программирования там не object pascal?
0
rangerx
1935 / 1544 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
04.09.2011, 17:10 #6
Цитата Сообщение от diagon Посмотреть сообщение
А разве язык программирования там не object pascal?
http://ru.wikipedia.org/wiki/Delphi_(язык_программирования)
1
Сыроежка
Заблокирован
04.09.2011, 18:35 #7
Цитата Сообщение от Виктор_Сен Посмотреть сообщение
Вот что хотел спросить. Когда я программировал в Делфи, там у объектов были свойства, и когда присваиваешь значение свойству, на самом деле вызывается метод, это сделано для инкапсуляции. А в книжках по си++ я что-то такого не нашёл. Не ужели в си++ нет такой удобной вещи?
И в С++, и в Дельфи свойство - это, фактически, метод класса. Просто в Дельфи пошли дальше и смоделировали поведение метода как обращение к переменной, означающей член класса. То есть это просто "синтаксический сахар". Ничего принципиального он не представляет.
0
TheAthlete
153 / 153 / 13
Регистрация: 31.08.2010
Сообщений: 535
04.09.2011, 21:44 #8
действительно, в c++ нет свойств, но есть несколько вариантов их эмуляции:
1) в Qt есть макрос Q_PROPERTY
2) на Хабре пробегали две статейки по этому поводу:
http://habrahabr.ru/blogs/cpp/125880/
http://habrahabr.ru/blogs/cpp/121799/
1
List2006
24 / 16 / 2
Регистрация: 19.12.2009
Сообщений: 366
04.09.2011, 21:56 #9
Цитата Сообщение от Виктор_Сен Посмотреть сообщение
Вот что хотел спросить. Когда я программировал в Делфи, там у объектов были свойства, и когда присваиваешь значение свойству, на самом деле вызывается метод, это сделано для инкапсуляции. А в книжках по си++ я что-то такого не нашёл. Не ужели в си++ нет такой удобной вещи?
Читай книгу "Как программировать на C++, Дейтл Х.М., Дейтл П.Д."
Там обсуждается момент, в данном случае это признак хорошего стиля, и проектирования в C++ (делать свойства приватными и обертывать публичными set* и get* функциями), но С++ ты делаешь это сам.
0
04.09.2011, 21:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.09.2011, 21:56
Привет! Вот еще темы с ответами:

Статические свойства классов - C++
Есть класс со статическим свойством class Data { protected: static char *str, *newStr; static unsigned long writedBytes,...

Задать свойства в классе - C++
Доброго времени суток, нужна помощь. Описал чтобы было понятно что же я пытаюсь сделать. Суть вопроса, как задать свойства?...

Свойства звука (диаграмма и др.) - C++
Программирую на С++ под VisualStudio 2005 (пока что только WinApi библиотеку изучаю, ну и частично DirectDraw как естественное желание...

Двусмысленные свойства классов - C++
Всем доброго времени суток! Есть такая проблема. Пишу проект, подразумевающий наличие абстрактного класса, у которого наследуют свойства 2...


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

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

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