Erreurs, bugs, questions - page 2273

 
fxsaber:

Je pense qu'il n'y a pas d'erreur, c'est ainsi que la mise en œuvre est conçue pour le moment.

alors pourquoi demander les plus ? une macro est un sous-modèle. pourquoi faire une analogie entre les deux ?

 
TheXpert:

alors pourquoi vous demandez les pour ?

La curiosité.

La macro est un sous-modèle. Pourquoi faire une analogie entre les deux ?

Pour une raison quelconque, le C++ est cité comme référence dans ce contexte. Pourquoi la compréhension de l'implémentation actuelle de MQL5 ne correspond pas - je ne sais pas.

 
TheXpert:

oui, cet exemple ne compile pas sur les plus

L'exemple de base en C++ se compile sans erreur

Un exemple comme celui-ci ne compile pas sur C++ :

class A;
void OnStart()
{
        Print( sizeof( A )); //нормально
}

Parce que c'est une erreur en soi, mais fxsaber prouvera que c'est en fait correct (c'est comme ça que MQL a été conçu), et nous ne comprenons pas quelque chose.

 
fxsaber:

Le C++, pour une raison quelconque, est cité comme la référence dans ce contexte.

Parce que le cadre du langage dit : MQL5 est basé sur le concept du langage de programmation C++ très répandu...

Et d'ailleurs, la réponse de ServiceDesk à certaines de mes demandes commençait par "Nous avons vérifié le comportement du code soumis dans Visual C++...".

Документация по MQL5: Основы языка
Документация по MQL5: Основы языка
  • www.mql5.com
Язык MetaQuotes Language 5 (MQL5) является объектно-ориентированным языком программирования высокого уровня и предназначен для написания автоматических торговых стратегий, пользовательских технических индикаторов для анализа разнообразных финансовых рынков. Он позволяет не только писать разнообразные экспертные системы, предназначенные для...
 
A100:

Un exemple comme celui-ci ne se compile pas en C++ :

Parce que c'est une erreur en soi, mais fxsaber va maintenant prouver que c'est correct (il a été conçu dans MQL) et que nous ne comprenons pas quelque chose.

Si MQL5 compile et exécute du code que C++ ne peut pas compiler, est-ce une affirmation valable ici que MQL5 le fait par erreur ?


Imaginons que ce soit un langage qui compile et exécute tout le code C++. En outre, il compile et exécute également certains codes que le C++ ne peut pas compiler. Le C++ est alors évidemment un sous-ensemble du langage en question. C'est seulement de la logique, sans référence à MQL5, spécifiquement.

 
A100:

L'exemple C++ de base se compile sans erreur

g++ 5.4.0 ne compile pas. et montrez-moi le nom de la classe de sortie.
 
TheXpert:
g++ 5.4.0 ne veut pas compiler. et montrez svp comment s'appelle la classe de sortie.


Bien que l'on s'attende(par analogie avec) par exemple à ceci :

void f<g<A,int >::T1>(void)
void f<g<A,double>::T1>(void)

Notez ici que la valeur __FUNCSIG__ est auxiliaire car elle ne fait pas partie de la norme et ne participe pas aux calculs. L'essentiel est que la mise en œuvre (:16) soit correcte. Embarcadero C++ donne le même résultat

 
A100:

Non, ce n'est pas la signature de la fonction qui m'intéresse, c'est la classe de la fonction interne.
 
TheXpert:
g++ 5.4.0 ne veut pas compiler. et s'il vous plaît, montrez-moi le nom de la classe de sortie.

quels sont les drapeaux que vous incluez ?

 
fxsaber:

Si MQL5 compile et exécute du code que C++ ne peut pas compiler, est-ce une affirmation valable ici que MQL5 le fait par erreur ?

Il ne le peut pas, car il y trouve des contradictions insolubles, qui ont peut-être été négligées dans le MQL.