Función que retorne Tarray<T>
Hola compañeros,
Antes que nada, les agradezco su atención y las respuestas que me puedan dar tanto como para solucionar o poder plantearme otra solución. Estoy consumiendo unos objetos DCOM que devuelven unos OleVariant alimentados como arrays. Los cuales se les puede hacer un manejo como muestro a continuación
Y quisiera llevar esa respuesta a un array generico. Algo como TArray < T > El inconveniente que tengo es que al tratar de devolver, un array de enteros me genera el error "E2010 Incompatible types: 'T' and 'Integer'". Igual sucede para otros tipos como double, string, etc.
la función, sin completar ya que el error no me deja avanzar, Es esta:
Entiendo que el error de genera porque espera elementos de tipo T, aunque también pensaba que al hacer uso de la función era donde se definiría el tipo de elemento.
|
No es una solucion elegante pero quizas te sirva:
Código:
class function TForm1.VariantToArray < T > (V: OleVariant): Tarray < variant > ; |
Muchas gracias! Sí, así funciona.
Y en realidad ya tengo el mismo array de variants dentro de la respuesta en el variant. Quería saber si podía pasarlo a un array con un tipo de dato definido con una función generica. La finalidad es por ej, cargarlos directamente a un TStringList si todo es un TArray < string > o pasarlo por parámetro en una función que me pida un TArray < integer > |
La franja horaria es GMT +2. Ahora son las 04:27:27. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi