Перейти к содержанию
  • Регистрация
  • 0
rareMax

Скопировать Дженерик

Вопрос

Есть код:

lApiResponse := TtgApiResponse<T>.Create(Param);
try  
	Result := lApiResponse.ResultObject;
finally
	lApiResponse.Free;
end;

В таком виде в Result просто передается указатель на lApiResponse.ResultObject.

А вот как можно скопировать lApiResponse.ResultObject в Result ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 1

я всегда делаю специальный метод AssignFrom

можно сделать его через json-сериализацию 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
2 часа назад, krapotkin сказал:

метод AssignFrom

Симметрично! А если у класса есть методы Save и Load (что я тоже обычно делаю), то Assign вообще состоит из 3-4 строк.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

В качестве <T> может быть как класс так и простые типы. То есть сделать что то типа 

Type 
	TtgApiResponse<T:Class>=Class 
    ...

немогу. Поэтому прошу показать как можно воспользоваться Assign"ами

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

может тогда <T:TValue>

там простые типы оборачиваются в класс

в FMX везде используются

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...