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

__declspec property - C++

Восстановить пароль Регистрация
 
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127
18.09.2013, 19:06     __declspec property #1
Всем доброго дня! Помогите понять шутку. Про то что __declspec property не стоит использовать не пишите уже прочитал, но мне необходимо использовать ее по заданию. Код компилируется без ошибок но компилятор все время подчеркивает строку
C++
1
obj.currentDir = s;
Errror: отсутствует операнд = соответствующий типам операндов const t_string = t_string ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class DI
{
protected:
    t_string m_currentDir;
 
public: 
    DI() {}
    void SetCurrentDir(const  t_string& curDir ) { m_currentDir = curDir; }
    const t_string& GetCurrentDir()     {return m_currentDir; }
    __declspec(property(get = GetCurrentDir, put = SetCurrentDir)) const t_string& currentDir;
};
void main()
{
    setlocale( LC_ALL,"Russian" ); 
    DI obj;
    t_string s(L"E:\\*.*");
 
    obj.currentDir = s;
 
    cout<<endl;
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.09.2013, 19:06     __declspec property
Посмотрите здесь:

C++ __declspec(property) и с чем его едят
Property Get и Property Let Странное поведение Visual Basic
C++ Как делается Read only property
C++ Реализовать шаблонный класс property
СОМ-объект на С++ с модификаторами __declspec(thread) роняет обработку 1С 1С 1C 8.x
Классы. Get/Set у property C++
C++ Property в плюсах
C++ Свойства (геттер) - альтернатива Property?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gorillych
14 / 14 / 1
Регистрация: 04.07.2013
Сообщений: 76
18.09.2013, 19:10     __declspec property #2
ArkTaS, у тебя t_string m_currentDir объявлена protected, т.е. к этому члену нет доступа вне класса. Сделай ее public, либо используй функцию setCurrentId:
C++
1
obj.SetCurrentDir(s);//вместо  obj.currentDir = s;
ArkTaS
1 / 1 / 0
Регистрация: 01.07.2013
Сообщений: 127
18.09.2013, 19:50  [ТС]     __declspec property #3
Gorillych, Где вы увидели доступ из вне ?! Конструкцию
C++
1
obj.currentDir = s;
компилятор воспринимает как obj.SetCurrentDir(s); вот описание работы __declspec http://msdn.microsoft.com/en-us/library/yhfk0thd.aspx
Yandex
Объявления
18.09.2013, 19:50     __declspec property
Ответ Создать тему
Опции темы

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