если есть класс Fun
=====================
class Fun
{
public:
Fun(int c): Counter(c){}
int Counter;
};
=====================
то можно написать так:
Fun fun(5);
int cnt = fun.Counter;
Но это если экземпляр класса инстанциируется автоматически. Здесь ты получаешь доступ к полю Counter через точку.
Если же инстанцируешь экземпляр класса динамически, т. е ты имеешь УКАЗАТЕЛЬ на переменную, то вместо точки для доступа к полям (и методам) нужно использовать ->
Fun* fun = new Fun(5);
int cnt = fun->Counter;
Иными словами, -> это то же самое, что *. то есть можно написать еще и так
int cnt = (*fun).Counter;
здесь (*fun) из указателя делает объект, и дальше к его свойствам можно обращаться уже через точку.
Другие языки программирования и технологии
Что значит "->" в C++?
Разыменование указателя. Вместо того, чтобы писать нечто вроде (TypeCast)(*Pointer).Method (не поручусь за точный синтаксис), позволяет писать просто Pointer->Method, что несколько удобнее.
Если доступ к членам объекта осуществляется непосредственно, то используется точка (прямой доступ).
Если доступ к членам объекта осуществляется через указатель на объект, то используется стрелочка (косвенный доступ).
Если доступ к членам объекта осуществляется через указатель на объект, то используется стрелочка (косвенный доступ).
Это *(ptr).member,оператор стрелка,
если используешь объект класса, или ссылку на объект, то синтаксис такой object.member object.member(),а если указатель на объект класс то opjectPtr->member objectPtr->member(),что эквивалентно таму, как написать *objectPtr, получить значение самого объектa, на который указывает objectPtr, а потом применить оператор точку,
*(ptr).member ~ ptr->member
если используешь объект класса, или ссылку на объект, то синтаксис такой object.member object.member(),а если указатель на объект класс то opjectPtr->member objectPtr->member(),что эквивалентно таму, как написать *objectPtr, получить значение самого объектa, на который указывает objectPtr, а потом применить оператор точку,
*(ptr).member ~ ptr->member
Это выбор метода ->text, -> Ну скорее можно сказать выбор функции.
Это селектор членов класса
Это язык программирования.
Похожие вопросы
- помогите составить таблицы истиности -А -> (B + C); (A B) * C; -A + -B + C; - (A + B) * C ; A * B _+ C; A B
- что значит это this -> в c++
- Подскажи по-быстрому, есть ли разница в юзании [ ] и ElementAt() у List<> в C#? Если есть, то какая?
- (c#)Что значит знать язык программирования
- C# Visual 2010 Express --> Как отправить информацию с одного компьютера на другой НЕ в локальной сети?
- Перевести C++ => C# Помогите пожалуйста!
- Что делает оператор p = a[ N>>1 ]; в C++?
- Третий день ипусь над воздушным сопротивлением в Unity на C#. Кто силен? Помогите пожалуйста! (МНОГОБУКВ >>)
- Учусь програмировать на C++ по книге "C++ для чайников".Проблема.
- Помогите срочно C#