Perguntas sobre a linguagem SI - página 10

 
Andrei Novichkov:
Se escrito normalmente, ele retornará um ponteiro para a estrutura.

Eu entendo isso, mas o que retornará uma estrutura que não tem campos?

 
Não vai fazer nada. É apenas uma espécie de exemplo, talvez um teste, por isso me parece. De onde é o fragmento, posso perguntar?
 
Andrei Novichkov:
Não vai fazer nada. É apenas uma espécie de exemplo, talvez um teste, por isso me parece. De onde é o trecho, posso perguntar?

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

Eu tentei conectar a biblioteca tensorflow.dll à 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, tem o seguinte no log: TF_Version=1.5.0

Estou preso a esta estranha construção (((((


Tanto a biblioteca quanto o arquivo de cabeçalho estão no anexo.

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...
Arquivos anexados:
 
Igor Makanu:

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

Eu tentei conectar a biblioteca tensorflow.dll à MQL5

funciona, tem o seguinte no log: TF_Version=1.5.0

Estou preso a esta estranha construção (((((


A biblioteca em si e o arquivo de cabeçalho estão no anexo

Você já tentou rubricar matrizes?

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

Você já tentou rubricar matrizes?

Meu exemplo é verificar se a biblioteca funciona em MQL5 - sim, funciona.

eu não quero escrever um vrooper, eu quero construir o arquivo de cabeçalho em mql


Estou chegando ao fundo da minha pergunta.

typedef struct TF_Status TF_Status;

Acho que comecei a apanhar-lhe o jeito:

struct TF_Status {
  tensorflow::Status status;
};
 
Muito provavelmente, a programação se transformou em adivinhação. Pergunto-me qual será o resultado...
 
Igor Makanu:

Estou falando de outra coisa, meu exemplo é verificar se a biblioteca vai funcionar na MQL5 - sim, vai

eu não quero escrever um vrooper, eu quero construir o arquivo de cabeçalho em mql


Estou chegando ao fundo desta questão.

Acho que já tenho o arquivo de cabeçalho na MQL5, mas já o tenho na MQL5:

Acho que você mesmo já adivinhou). Apenas a definição da própria estrutura em algum outro lugar, possivelmente em outro arquivo. Talvez em outra biblioteca).

Você não precisa escrever tudo de uma só vez:

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

O dactilografado pode muito bem ser destacado e tratado em outro lugar.

Alexei Tarabanov:
Muito provavelmente, a programação se transformou em adivinhação. Pergunto-me qual será o resultado...
E sem adivinhações. É assim que eles têm cantado toda a vida.
 

Por que não refinar os invólucros existentes para TensorFlow e Pytorch?

Por que todos são atraídos a reinventar sua própria roda?

O TensorFlow sem Python é cortado. E você não pode conectá-lo à MQL sem a embalagem intermediária por causa da incompatibilidade entre MQL e C/C++.

 
Roffild:

Por que não refinar os invólucros existentes para TensorFlow e Pytorch?

Por que todos são atraídos a reinventar sua própria roda?

O TensorFlow sem Python é cortado. E é impossível conectá-lo corretamente à MQL sem o invólucro intermediário devido à incompatibilidade de MQL e C/C+++.

Já vi sua bicicleta, mas por enquanto estou interessado na implementação da TensorFlow developers

ZS: talvez este ano haja um TensorFlow API em 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:

mas basicamente eu não entendo o queTF_NewStatus()retornará?

um ponteiro para um pedaço de dados de tamanho 4 ou 8 bytes.

o tamanho depende da plataforma por causa do alinhamento. se você usar algo como pragma pack 1, o tamanho será o mesmo (1 byte provavelmente)