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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
StormSpirit
6 / 6 / 2
Регистрация: 13.02.2013
Сообщений: 32
#1

вызов метода у указателя на указатель на класс - C++

13.02.2013, 14:09. Просмотров 420. Ответов 4
Метки нет (Все метки)

Доброго времени суток!
Простите за, возможно, глупый вопрос и/или его неточную формулировку, но вот что есть:

C++
1
2
3
4
5
6
class parent
{
  public:
    int smth;
    virtual void method () = 0;
}
C++
1
2
3
4
5
class child: public parent
{
  public:
    void method () {smth = 15};
}
C++
1
2
3
4
5
6
7
8
9
10
. . .
  parent ** ptr;
  ptr = new parent * [4]
  for (int i=0; i<4; i++)
  {
    ptr[i] = new child;
  }
 
// Как синтаксически правильно вызвать у ptr[0] метод method?
. . .
Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2013, 14:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос вызов метода у указателя на указатель на класс (C++):

Вызов метода производного класса через указатель на базовый класс - C++
Всем привет ! Подскажите почему , при выполнении строки 45 я получаю ошибку ? А именно при выполнении выражения c-&gt;fnz() ...

Вызов виртуального метода базового класса из указателя производного - C++
Допустим есть такой код: #include &lt;iostream&gt; class Base { public: virtual void f() { std::cout &lt;&lt; &quot;Base\n&quot;; } ...

Универсальный вызов метода через указатель на объект - C++
Никак не могу найти универсальную конструкцию, которая позволяла бы вызывать любой метод класс, с любыми параметрами через указатель на...

Вызов метода потомка через указатель на родителя - C++
Всем доброго времени суток, никак не придумаю, как провернуть такое: Пишу простенькую игру на cocos2dx. Есть первый класс, CNode - он...

Вызов метода класса через указатель на ноль - C++
Почему в таком коде не происходит ошибка при вызове метода класса, а уже только в самом методе: struct A { int a; void...

Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... - C++
Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... как сделать...

4
iifat
2253 / 1409 / 109
Регистрация: 05.06.2011
Сообщений: 3,876
13.02.2013, 14:16 #2
C++
1
ptr [i] -> method ()
1
StormSpirit
6 / 6 / 2
Регистрация: 13.02.2013
Сообщений: 32
13.02.2013, 19:14  [ТС] #3
Цитата Сообщение от iifat Посмотреть сообщение
C++
1
ptr [i] -> method ()
К сожалению, это не работает =(
0
ITcrusader
Эксперт С++
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
13.02.2013, 19:24 #4
Что значит "Не работает"? Может просто не компилируется? Потому что в исходном коде синтаксические ошибки.
Вот - рабочий вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
class parent
{
  public:
    int smth;
    virtual void method () = 0;
};
 
class child: public parent
{
  public:
    void method () {smth = 15;}
};
 
 
int main()  {
    
  parent ** ptr;
  ptr = new parent* [4];
  for (int i=0; i<4; i++)
  {
    ptr[i] = new child;
    
    // ВЫЗОВ МЕТОДА:
    ptr[i]->method();
  } 
    
    return 0;
}
0
StormSpirit
6 / 6 / 2
Регистрация: 13.02.2013
Сообщений: 32
14.02.2013, 11:52  [ТС] #5
Прошу прощения, этот код работает
Цитата Сообщение от iifat Посмотреть сообщение
C++
1
ptr [i] -> method ()
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2013, 11:52
Привет! Вот еще темы с ответами:

Вызов виртуальной функции через указатель на базовый класс - C++
Всем привет! Помогите пожалуйста разобраться с вызовом виртуальной функции в программе. В моей программе требуется организовать класс...

Преобразование типа при вызове виртуального метода через указатель на базовый класс - C++
Доброго времени суток. Наткнулся на вот такой вопрос в сети и пока что не смог на него ответить, может быть у Вас получится: В каких...

Передача умного указателя в функцию принимающую указатель на указатель - C++
Итак имеется функция со следующим параметром: HRESULT __stdcall Function(SomeClass **param); В случае, когда создаём обычный...

Как сделать функцию от указателя на класс и указателя на метод? - C++
Не получается сделать функцию, параметрами которой являются указатель на класс и на метод. Обращаться к классу нужно именно по указателю,...


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

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
14.02.2013, 11:52
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru