Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » * Теория * | C++ Доступ к членам класса через указатели

Ответить
Настройки темы
* Теория * | C++ Доступ к членам класса через указатели

Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Есть такие классы:

class class1
{
class2 *object2;
};


class class3
{
class1 *object1;
};



в main-файле объявляется переменная класса class3:

class3 object3;

нужно получить доступ к переменной, на которую указывает пойнтер object2.
Тут вся проблема в том, что нужно получить доступ к переменной, на которую указывает указатель object2, на который в свою очередь указывает указатель из другого класса object1. Object3 - не указатель.

object3.object1->*object2 не работает,
object3.object1->(*object2) тоже, в обоих случаях говорит object2 undeclared.
Какой же синтаксис тут правильный будет?

Отправлено: 13:35, 30-07-2006

 

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


а где прописано что эти проперти класса punlick?

object3.object1->object2

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 13:47, 30-07-2006 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Не понял вопрос Что такое punlick?

Но проблема решилась. Экспериментально установил, что правильный вариант записи:

*(object3.object1->object2)

Во как!

Отправлено: 18:27, 30-07-2006 | #3


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Kincajou
Цитата:
Не понял вопрос Что такое punlick?
publick

Цитата:
*(object3.object1->object2)

Во как!
object3.object1->object2->****
(*(object3.object1->object2)).****

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 20:20, 30-07-2006 | #4


Новый участник


Сообщения: 19
Благодарности: 0

Профиль | Отправить PM | Цитировать


Это еще варианты? А чем отличаются от моего?

Прописано в паблике, конечно. Можно про **** подробнее? Ни в одной эл. книжке не встречал такого.

Отправлено: 21:34, 30-07-2006 | #5


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Kincajou
object3.object1->object2->имя_функции
(*(object3.object1->object2)).имя_функции
это синонимы... в данном случае.

Цитата:
Экспериментально установил, что правильный вариант записи:
нужно не эксперементально устанавливать а почитать книжку по C++ там про это на писано

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 21:47, 30-07-2006 | #6

pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
class class2;

class class1
{
  class2* c2ptr;
};
скорее всего откомпилируется, но обращение *class1.c2ptr не получится, т.к. компилятор ещё не знает структуру class2 (придирка к первому посту)
Код: Выделить весь код
class class2;

class class1
{
  class2* c2ptr;
};

class class2 
{
   ...
}; // теперь всё нормально

Отправлено: 22:36, 30-07-2006 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » * Теория * | C++ Доступ к членам класса через указатели

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как правильно устанавливать шрифты членам домена? dmitryst Microsoft Windows NT/2000/2003 2 30-06-2009 14:02
FreeBSD - Доступ по ФТП (через командрую строку -нормально, а через браузер, только домашний) _soldat_ Общий по FreeBSD 4 29-09-2008 09:22
C/C++ - Константы и Указатели oRaVeNo Программирование и базы данных 2 31-05-2008 23:37
указатели papam Программирование и базы данных 7 26-12-2005 11:32
*Теория* | C++ | Самоубийство класса pva Программирование и базы данных 7 16-11-2005 13:11




 
Переход