Как сделать поле в классе указателем на поле другого класса в c++?

Пользователь

от stephania , в категории: JavaScript , 8 месяцев назад

Как сделать поле в классе указателем на поле другого класса в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от forest , 8 месяцев назад

@stephania 

Для создания поля в классе, указателем на поле другого класса в C++, необходимо выполнить следующие шаги:

  1. Определить класс, в котором будет содержаться поле, на которое будет указывать указатель. Например, предположим, что у нас есть класс "ClassA" с полем "fieldA".
1
2
3
4
class ClassA {
public:
    int fieldA;
};


  1. Определить класс, в котором будет находиться указатель на поле другого класса. Назовем его "ClassB" и добавим поле "pointerToField".
1
2
3
4
class ClassB {
public:
    ClassA* pointerToField;
};


  1. В теле класса "ClassB" можно присвоить указатель на поле класса "ClassA" с помощью оператора присваивания "=".
1
2
3
ClassA objA;
ClassB objB;
objB.pointerToField = &objA.fieldA;


В данном примере, "objA.fieldA" является полем класса "ClassA", а "&" перед ним используется для получения указателя на это поле.

  1. После этого, вы можете использовать указатель на поле "fieldA" класса "ClassA" через указатель "pointerToField" класса "ClassB".