Управляемый C ++ не поддерживает автоматические свойства. Вы должны вручную объявить поле поддержки и методы доступа:
private: String* _internalSomeValue;
public:
__property String* get_SomeValue() { return _internalSomeValue; }
__property void set_SomeValue(String *value) { _internalSomeValue = value; }
C ++ / CLI поддерживает автоматические свойства с очень простым синтаксисом:
public: property String^ SomeValue;
Обновление (ответ на комментарий):
В C ++ / CLI вы не можете контролировать доступность каждого метода доступа отдельно при использовании автоматического синтаксиса свойств. Вам нужно определить поле поддержки и методы самостоятельно:
private: String^ field;
property String^ SomeValue {
public: String^ get() { return field; }
private: void set(String^ value) { field = value; }
}