Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.06.2017, 17:15
kenshi245 kenshi245 вне форума
Прохожий
 
Регистрация: 08.06.2017
Сообщения: 16
Версия Delphi: Delphi
Репутация: -625
По умолчанию Как мне передать указатель?

Подскажите как сделать чтобы наследуемый метод add добавлял элемент в конец именно массива внутри класса, который его вызывает?

Код:
 unit test;

 interface
 
type
 
  a = class( tobject )
  public
  procedure add( i : integer; xy: pointer);
  end;
 
  b = class( a )
  public
  x : array of integer;
  end;
 
  c = class( a )
  public
  y : array of integer;
  end;
 
implementation
 
  procedure a.add( i : integer; xy: pointer);
  begin
    setlength( @xy, length( @xy ) + 1 ); //ругается на xy
    self.xy[ length( self.xy ) - 1 ] := i;
  end;
 
var
  my_b: b;
  my_c: c;
begin
  my_b := b.create;
  my_c := c.create;
  my_b.add(123, @my_b.x); //Нужно добавить 123 в массив x
  my_c.add(456, @my_b.y); //Нужно добавить 456 в массив y
end.

Последний раз редактировалось kenshi245, 19.06.2017 в 19:49.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:39.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter