Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2015, 18:16   #11
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

Инкапсуляция и без авто-свойств будет, да и вообще без свойств.
Фишки тут особо и нет.
come-on вне форума Ответить с цитированием
Старый 27.10.2015, 19:24   #12
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Цитата:
Инкапсуляция и без авто-свойств будет, да и вообще без свойств.
Фишки тут особо и нет.
И с ними будет, и без них можно (как в java, например). А фишка есть: не приходится писать отдельные методы для контроля доступа к полю. Хорошо это или плохо - тема совсем другого холивара
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 12.04.2016, 13:13   #13
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

как будет выглядеть это в чистых плюсах ?

Код:
#include "stdafx.h"

using namespace System;

ref class Person
{
   int age;
public:
Person() 
{
	
	Age = 0;
	
}
property int Age
{
int get() 
{ 
	
	return age; 
}
void set(int val) 
{
	
	age = val; 
}
}
};
 


int main(array<System::String ^> ^args)
{
	Person ^p = gcnew Person; 
	Console::WriteLine(p->Age);
	p->Age = -77;
	Console::WriteLine(p->Age);
	Console::ReadLine();
    return 0;
}
RAFA91 вне форума Ответить с цитированием
Старый 12.04.2016, 13:20   #14
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Код:
int age() const;
void setAge(int val);
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.04.2016, 13:22   #15
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

да я не про это.

как в чистых плюсах сделать аналог

p->Age = -77;
Console::WriteLine(p->Age);


Age это ж гет и сет в одном лице.
RAFA91 вне форума Ответить с цитированием
Старый 12.04.2016, 13:37   #16
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А я про что?

Код:
p->setAge(77);
cout << p->age();
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.04.2016, 13:51   #17
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

Alex11223 мне нужно получать доступ к закрытым полям

не через функцию, а через какое-то имя

но не имя переменной !!!

p->Age = -77;

int x = p->Age;


если это не реально , тогда бонус в пользу C++/CLI
RAFA91 вне форума Ответить с цитированием
Старый 12.04.2016, 13:58   #18
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Дык свойства это просто синтаксический сахар для таких функций.

В С++ их нет, да.
И в Java тоже.
Унылые языки, только в C++/CLI сила.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.04.2016, 14:11   #19
RAFA91
Заблокирован
 
Регистрация: 06.02.2011
Сообщений: 1,999
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Дык свойства это просто синтаксический сахар .
Ну так я предлагаю этот сахарок перенести на ++.

какие будут предложения ?

p->Age; строка умная.

она работает как установка и как получение значения
RAFA91 вне форума Ответить с цитированием
Старый 12.04.2016, 14:14   #20
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от RAFA91 Посмотреть сообщение
Ну так я предлагаю этот сахарок перенести на ++.

какие будут предложения ?

p->Age; строка умная.

она работает как установка и как получение значения
ну так напишите в консорциум, что вы тут то пишите?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дебаг С++/CLI Максим 116 Помощь студентам 3 27.12.2013 22:17
Ошибки в C++/CLI Максим 116 Помощь студентам 2 25.12.2013 22:45
c++/cli danzel1 Общие вопросы C/C++ 3 25.07.2011 17:11
C/C++/CLI. Ynxarmed Visual C++ 1 31.08.2010 07:43
advapi32 и C++/CLI Artem89 Общие вопросы .NET 1 20.12.2009 18:22