Preguntas sobre la lengua SI - página 10

 
Andrei Novichkov:
Si se escribe normalmente, devolverá un puntero a la estructura.

Lo entiendo, pero ¿qué devolverá una estructura que no tiene campos?

 
No hará nada. Es sólo una especie de ejemplo, tal vez una prueba, por lo que me parece. ¿De dónde es el fragmento, si se puede saber?
 
Andrei Novichkov:
No hará nada. Es sólo una especie de ejemplo, tal vez una prueba, por lo que me parece. ¿De dónde es el fragmento, si se puede saber?

tensorflow c++ apihttps://www.tensorflow.org/install/lang_c

He intentado conectar la biblioteca tensorflow.dll a MQL5

#property strict

#define  PCHAR  long

#import "tensorflow.dll"
const PCHAR TF_Version();
#import

#import "msvcrt.dll"
int strcpy(uchar &dst[],PCHAR src);
#import
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   uchar byte[];
   ArrayResize(byte,300);
   PCHAR ptr;
//--- указатель на строку
   ptr=TF_Version();
   if(ptr>0) strcpy(byte,ptr);
   Print("TF_Version="+CharArrayToString(byte));
//---
   return(INIT_SUCCEEDED);
  }

funciona, tiene lo siguiente en el registro: TF_Version=1.5.0

Estoy atascado con esta extraña construcción (((((


Tanto la biblioteca como el archivo de cabecera están en el archivo adjunto.

Install TensorFlow for C  |  TensorFlow
Install TensorFlow for C  |  TensorFlow
  • www.tensorflow.org
TensorFlow provides a C API that can be used to build bindings for other languages. The API is defined in and designed for simplicity and uniformity rather than convenience. Supported Platforms TensorFlow for C is supported on the following systems: Setup Download TensorFlow C libraryURL Extract Extract the downloaded archive, which contains...
Archivos adjuntos:
 
Igor Makanu:

tensorflow c++ apihttps://www.tensorflow.org/install/lang_c

He intentado conectar la biblioteca tensorflow.dll a MQL5

funciona, tiene lo siguiente en el registro: TF_Version=1.5.0

Estoy atascado con esta extraña construcción (((((


La biblioteca en sí y el archivo de cabecera están en el archivo adjunto

¿Has probado a inicializar las matrices?

 
Алексей Тарабанов:

¿Has probado a inicializar las matrices?

Mi ejemplo es para comprobar si la biblioteca funciona en MQL5 - sí lo hace.

no quiero escribir un vrooper, quiero construir el archivo de cabecera en mql


Estoy llegando al fondo de mi pregunta.

typedef struct TF_Status TF_Status;

Creo que he empezado a cogerle el tranquillo:

struct TF_Status {
  tensorflow::Status status;
};
 
Como era de esperar, la programación se ha convertido en una adivinanza. Me pregunto cuál será el resultado...
 
Igor Makanu:

Estoy hablando de otra cosa, mi ejemplo es comprobar si la biblioteca funcionará en MQL5 - sí lo hará

no quiero escribir un vrooper, quiero construir el archivo de cabecera en mql


Estoy entendiendo esta pregunta.

Creo que ya he empezado a analizar mi pregunta:

Creo que tú mismo lo has adivinado). Sólo la definición de la propia estructura en otro lugar, posiblemente en otro archivo. Quizás en otra biblioteca).

No tienes que escribir todo a la vez:

typedef struct TF_Status {
int if;
long lf;
.....
} TF_Status, *PTF_Status;

typedef puede separarse y tratarse en otro lugar.

Alexei Tarabanov:
Como era de esperar, la programación se ha convertido en una adivinanza. Me pregunto cuál será el resultado...
Y no hay que adivinar. Así es como han cantado toda la vida.
 

¿Por qué no perfeccionar las envolturas existentes para TensorFlow y Pytorch?

¿Por qué todo el mundo se siente atraído por reinventar su propia rueda?

TensorFlow sin Python se reduce. Y no se puede conectar a MQL sin la envoltura intermedia debido a la incompatibilidad de MQL y C/C++.

 
Roffild:

¿Por qué no perfeccionar las envolturas existentes para TensorFlow y Pytorch?

¿Por qué todo el mundo se siente atraído por reinventar su propia rueda?

TensorFlow sin Python se reduce. Y es imposible conectarlo correctamente a MQL sin el wrapper intermedio debido a la incompatibilidad de MQL y C/C++.

He visto su bicicleta pero por ahora me interesa la implementación de los desarrolladores de TensorFlow

ZS: quizá este año haya una API de TensorFlow en C#https://www.tensorflow.org/lite/guide/roadmap

TensorFlow Lite 2019 Roadmap  |  TensorFlow Lite  |  TensorFlow
  • www.tensorflow.org
Updated: March 6th, 2019 The following represents a high level overview of our 2019 plan. You should be conscious that this roadmap may change at anytime relative to a range of factors and the order below does not reflect any type of priority. As a matter of principle, we typically prioritize issues that the majority of our users are asking for...
 
Igor Makanu:

pero básicamente no entiendo qué devolveráTF_NewStatus() ?

un puntero a un dato de tamaño 4 u 8 bytes.

el tamaño depende de la plataforma debido a la alineación. si utiliza algo como pragma pack 1, el tamaño será el mismo (1 byte probablemente)