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

__property - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.69
Tarik20
 Аватар для Tarik20
21 / 22 / 2
Регистрация: 14.02.2013
Сообщений: 242
26.06.2013, 22:13     __property #1
Видел __property в C++ Builder и в C#.Используется в классе вот так:
C++
1
__property int IntegerValue = {read = GetValue,write = SetValue};
Как использовать это в C++?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16828 / 5249 / 321
Регистрация: 30.03.2009
Сообщений: 14,139
Записей в блоге: 26
26.06.2013, 22:23     __property #2
Этого нет в Си++. Это специальное борландовское расширение языка Си++, которое понимает только борландовский компилятор
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
26.06.2013, 22:38     __property #3
хороший вопрос... в чистом C++ наверное никак...
в C++/CLI, С++ Builder, С# - гляньте сюда -
Builder - http://tzquest.ru/fox-earth/program/...rty-what-is-it
CLI, C# - http://msdn.microsoft.com/en-us/libr...(v=vs.71).aspx

вообще это перенято из Delphi, я даже сходу не придумаю хорошую реализацию для чистого C++

Добавлено через 2 минуты
Цитата Сообщение от Evg Посмотреть сообщение
Этого нет в Си++. Это специальное борландовское расширение языка Си++, которое понимает только борландовский компилятор
не только борланд, С++/CLI и C# - мастдайные
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
26.06.2013, 22:40     __property #4
@abit, просто борланд это всё же C++, а всё остальное (CLI, C#) уже совсем не C++.

Добавлено через 48 секунд
Цитата Сообщение от abit Посмотреть сообщение
я даже сходу не придумаю хорошую реализацию для чистого C++
по сути там всё разворачивается в пару геттер/сеттер емнип.
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
26.06.2013, 22:42     __property #5
Цитата Сообщение от Tulosba Посмотреть сообщение
@abit, просто борланд это всё же C++, а всё остальное (CLI, C#) уже совсем не C++.
что?
http://www.open-std.org/jtc1/sc22/wg21/
вот это C++
а у борланда стандарт не поддерживается
g++ и Intel C++ больше C++, чем борланд
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
26.06.2013, 22:46     __property #6
@abit, не понял про ссылку. Что я там должен был увидеть?
То, что у борланда не поддерживается стандарт это ежу понятно. Я о том, что язык всех Буилдеров это в первую очередь C++ (со своими приколами), а вот С++/CLI и C# это уже совершенно другие языки.
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
26.06.2013, 22:52     __property #7
Цитата Сообщение от Tulosba Посмотреть сообщение
@abit, не понял про ссылку. Что я там должен был увидеть?
То, что у борланда не поддерживается стандарт это ежу понятно. Я о том, что язык всех Буилдеров это в первую очередь C++ (со своими приколами), а вот С++/CLI и C# это уже совершенно другие языки.
насчёт C# не спорю, язык другой, но вот C++/CLI - язык тот же, после g++ не заметил сильной разницы, а только дополнительные фичи классовых языков - gcnew например или int a.ToString();
вся основа та же и полная поддержка STL, не увидел разницы и в синтаксисе, или вы считаете, что если я например в дельфях подключу Uses Winsock2 то это сразу другой язык, чем без uses?

но первоначально я просто поправил, что не только борланд умеет понимать дельфийское property, а мастдайные VS C++ тоже... и всё... ну и что борланд компилятор - это не стандарт C++
дилема яйца выеденного не стоит
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
26.06.2013, 23:06     __property #8
@abit, насколько я знаю, основное отличие CLI в том, что идет он под .Net. Хоть и сделали его для взаимодействия с нативным C++ кодом, сам по себе он получился каким-то мутантом. Может быть конечно я просто плохо с ним знаком, поэтому так считаю.
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
26.06.2013, 23:07     __property #9
и в тему

property это просто набор из процедуры для записи и функции для чтения, сделайте процедуру SetValue и ф-цию GetValue и всё
а то Tulosba заумно написал в ветке для новчиков )))

Добавлено через 1 минуту
@Tulosba,
ну как бы там весь код C++ работает с поправкой на управляемые классы, а так язык тот же, уверяю, если не использовать class ref
Tulosba
26.06.2013, 23:09
  #10

Не по теме:

Цитата Сообщение от abit Посмотреть сообщение
а так язык тот же, уверяю, если не использовать class ref
ок но я в него ни ногой.

Tarik20
 Аватар для Tarik20
21 / 22 / 2
Регистрация: 14.02.2013
Сообщений: 242
27.06.2013, 20:12  [ТС]     __property #11
Спасибо, а можно включить это в Borland C++?
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
27.06.2013, 20:49     __property #12
Цитата Сообщение от Tarasichok Посмотреть сообщение
Спасибо, а можно включить это в Borland C++?
Оно там есть по умолчанию. Вы же сами об этом писали в первом сообщении.
Tarik20
 Аватар для Tarik20
21 / 22 / 2
Регистрация: 14.02.2013
Сообщений: 242
27.06.2013, 23:01  [ТС]     __property #13
Цитата Сообщение от Tulosba Посмотреть сообщение
Оно там есть по умолчанию. Вы же сами об этом писали в первом сообщении.
Я говорю о Borland C++ а не о C++ Builder
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
27.06.2013, 23:07     __property #14
Цитата Сообщение от Tarasichok Посмотреть сообщение
Я говорю о Borland C++ а не о C++ Builder
Какого года выпуска?
Tarik20
 Аватар для Tarik20
21 / 22 / 2
Регистрация: 14.02.2013
Сообщений: 242
28.06.2013, 19:56  [ТС]     __property #15
Цитата Сообщение от Tulosba Посмотреть сообщение
Какого года выпуска?
Год не знаю, версия 5.5
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
28.06.2013, 20:30     __property #16
@Tarasichok, Вы из музея его что ли украли? Возьмите нормальную и современную среду разработки.
Avazart
 Аватар для Avazart
6904 / 5144 / 253
Регистрация: 10.12.2010
Сообщений: 22,629
Записей в блоге: 17
28.06.2013, 21:28     __property #17
Цитата Сообщение от abit Посмотреть сообщение
не только борланд, С++/CLI и C# - мастдайные
Ну тут как сказать, это скорее недостаток самого языка, если приходится идти на такие расширения...

Собственно __property нужен для работы компонентов которые "тянутся" из Delphi, да и вообще в некотором смысле удобно.

Добавлено через 4 минуты
Цитата Сообщение от abit Посмотреть сообщение
что?
http://www.open-std.org/jtc1/sc22/wg21/
вот это C++
а у борланда стандарт не поддерживается
g++ и Intel C++ больше C++, чем борланд
А Clang ?

http://docwiki.embarcadero.com/RADSt...plates_example
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
28.06.2013, 23:05     __property #18
clang - фронтенд с полной поддержкой C++11 и отличными диагностическими сообщениями, но причем он тут? )
Avazart
 Аватар для Avazart
6904 / 5144 / 253
Регистрация: 10.12.2010
Сообщений: 22,629
Записей в блоге: 17
28.06.2013, 23:06     __property #19
А ссылка причем тут ? ( которую привел )
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2013, 23:13     __property
Еще ссылки по теме:

C++ Builder Что означает строка: __property System::WideChar PathSeparator = {read=FPathSeparator}; ?

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

Или воспользуйтесь поиском по форуму:
Герц
523 / 340 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
28.06.2013, 23:13     __property #20
Это собственно и не Борланд уже, претензии то к их компилятору самодельному были, а раз Embarcadero перешли на clang - сделали правильный выбор.
Интересно, что они используют в качестве стандартной либы. Родная libc++ под windows порта пока что не имеет, неужели libstdc++?
Yandex
Объявления
28.06.2013, 23:13     __property
Ответ Создать тему
Опции темы

Текущее время: 17:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru