Erreurs, bugs, questions - page 2537

 
A100:

Je peux voir ça.

#define  MACRO( ТОЛЬКО_НЕ_void )    Print( "OK" )
void OnStart() { MACRO(); }

Hmm, c'est compliqué...... Dites bonjour aux EEJAMS !

#define    test(int) for(int i=0;i<10;i++) Print("OK");
//+------------------------------------------------------------------+
void OnStart()
  {
  test();
  }

i' - identificateur non déclaré tst.mq5 16 3

L'option vide fonctionnera sans problème, mais n'oubliez pas d'enlever la feuille d'aluminium.
 
A100:

Je peux voir ça.

#define  MACRO Print( "OK" )
void OnStart() { MACRO; }

Est-ce que les parenthèses après la macro vous font vous sentir mieux ?

Et oui, l'utilisation de mots réservés dans la déclaration des paramètres de macro est un amour aux conditions préalables d'énormes bogues. Eh bien, chacun décide lui-même comment tirer sur ses jambes, heureusement que les développeurs ne nous ont pas vraiment protégés de cette action fascinante, et on leur en est reconnaissant)))).

Enfin, déterminez ce que le paramètre macro et comment il est utilisé.

 
Igor Makanu:

hmm, c'est compliqué pour vous...... Dites bonjour aux hérissons !

i' - identificateur non déclaré tst.mq5 16 3

La variante vide fonctionnera sans problème, mais vous le saurez.
void OnStart()
  {
  for(i=0;i<10;i++) Print("OK");;
  }

C'est ce que le préprocesseur vous donne en sortie.

PS deux ; - ce n'est pas ma faute de frappe, ce sera vraiment après le préprocesseur.
 
Igor Makanu:

La version vide fonctionnera sans problème, mais c'est vous qui savez le mieux, n'oubliez pas d'enlever la feuille d'aluminium.

Dans ce cas particulier, cela fonctionnera, mais pas dans le cas général. Personne n'a besoin des pires solutions pour les cas particuliers. Le vide implique n'importe quels mots-clés, au cas où vous n'auriez toujours pas compris

 
Vladimir Simakov:

Les parenthèses après une macro vous font-elles vous sentir mieux ?

Mais oui, l'utilisation de mots réservés dans la déclaration des paramètres de macro est un amour aux conditions préalables de faire d'énormes bugs. Eh bien, chacun décide pour lui-même comment tirer sur ses jambes, bonne chose, les développeurs ne sont pas tout à fait sécurisé de cette action passionnante, pour ce qu'ils respectent)))).

Enfin, déterminez ce que le paramètre macro et comment il est utilisé.

J'ai un argument de poids pour vous : "Tout fonctionne correctement en C++". Avez-vous quelque chose à répondre à cela ? Non ? - Alors gardez vos enseignements moraux pour vous. Et vous feriez mieux de le découvrir - si vous ne comprenez pas pourquoi les crochets sont là.

P.S. C'estIgor Makanuqui l'a suggéré- écrivez-lui à ce sujet.
 
A100:

Dans ce cas particulier, cela fonctionnera, mais pas dans le cas général. Des solutions de pis-aller pour des cas particuliers - personne n'en a besoin. vide signifiait n'importe quels mots-clés, si vous ne comprenez toujours pas

Très bien, allez-y, ce n'est pas agréable de vous parler. Je suis toujours attiré par les personnalités, je suis plus intéressé par les sujets techniques dans ce forum.

Vladimir Simakov:

C'est ce que le pré-processeur vous a sorti.

PS deux ; - ce n'est pas une faute de frappe de ma part, ce sera vraiment après le préprocesseur.

Je sais de quoi il s'agit ;

la question était purement technique - comment faire pour bien faire les choses

j'ai utilisé n'importe quel type, je m'attendais à des conneries - ça a bien marché, je l'utilise rarement (j'écris la plupart du temps l'envoi de l'ordre comme BUY(double lot) ou une simple macro BUY()) - J'ai toujours utilisé void ici - il n'y a eu aucun problème et il ne devrait pas y en avoir.

 
A100:

J'ai un argument de poids pour vous : "Tout fonctionne correctement en C++". Avez-vous quelque chose pour le contredire ?

Et puis il y a C#, JS et tout le reste. Seulement ici il y a mql, et il a ceci.
 
Igor Makanu:

Très bien, occupez-vous, ce n'est pas agréable de vous parler. Vous avez toujours tendance à sauter sur les personnalités, je suis plus intéressé dans ce forum par les sujets techniques.

Pas agréable ? Des sujets techniques d'intérêt ? A en juger par votre message, je crois comprendre que vous êtes plus intéressé par le thème du SM. Je communique avec vous, dans votre langue, en utilisant votre vocabulaire.

 
Vladimir Simakov:
Et puis il y a le C#, le JS et tout le reste. Seulement ici c'est mql, et ça se passe comme ça.

Qu'est-ce que C#, JS et tout le reste ont à voir avec ça ? Lire la documentation MQL - page 1 :

"La syntaxe de MQL5 est similaire à celle de C++".

https://www.mql5.com/ru/docs/basis.

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

Qu'est-ce que C#, JS et tout le reste ont à voir avec ça ? Lire la documentation MQL - page 1 :

"La syntaxe de MQL5 est similaire à celle de C++".

https://www.mql5.com/ru/docs/basis.

Une ressemblance n'est pas une correspondance parfaite. Cependant, toutes ces chamailleries sont hors sujet.