Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 588

 
Slivator:

Peut-être que ceci pourrait fonctionner http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=8

Seulement, pourquoi voudriez-vous changer la couleur de la barre ? Si la barre doit être marquée, il suffit peut-être de mettre une icône.

C'est juste la façon dont l'homme le veut. Et à juste titre...
 

Il y a un problème avec les classes.

Il existe deux bibliothèques de classes - la bibliothèque standard de MQL4 et celle d'un développeur tiers. Ces deux bibliothèques devraient être utilisées, mais le problème est qu'elles contiennent des classes portant le même nom. Il en résulte une ambiguïté : le compilateur ne sait pas de quelle bibliothèque j'utilise la classe.

Comment faire face à cette situation ? En C++ ce problème peut être résolu avec des alias, en MQL je ne sais pas.

 
Barbarian:

Il y a un problème avec les classes.

Il existe deux bibliothèques de classes - la bibliothèque standard de MQL4 et celle d'un développeur tiers. Ces deux bibliothèques devraient être utilisées, mais le problème est qu'elles contiennent des classes portant le même nom. Il en résulte une ambiguïté : le compilateur ne sait pas de quelle bibliothèque j'utilise la classe.

Comment faire face à cette situation ? En C++ ce problème peut être résolu avec des alias, en MQL je ne sais pas.

Chacun a mis son propre espace de nom.
 
Zhunko:
Mettez chacun d'eux dans son propre espace de nom.

Comment définir un espace de noms dans MQL4 ? Je n'arrive pas à le trouver. Pour l'instant, je pense à quelque chose de ce genre :

#ifndef  CTable
   #include <\Integer_Test\GUI.mqh>
#endif
#ifndef  CList
   #include <Arrays\List.mqh>
#endif

mais je continue à obtenir des erreurs de redéfinition. Je pense que j'ai besoin d'autre chose.

 
Barbarian:

Comment définir un espace de noms dans MQL4 ? Je n'arrive pas à le trouver. Pour l'instant, je pense à quelque chose de ce genre :

mais je continue à obtenir des erreurs de redéfinition. Je pense que j'ai besoin d'autre chose.

namespace A
 {
  class a{};
 }
namespace B
 {
  class a{};
 }
Ce sont deux classes différentes, bien qu'elles soient les mêmes :-))
 
Zhunko:
Ce sont deux classes différentes, bien qu'elles soient les mêmes :-))

Ceci est un exemple pour C++, il n'y a pas d'espace de noms dans MQL4.
 
Barbarian:
Ceci est un exemple pour C++, pas d'espace de nom dans MQL4.

J'ai accidentellement supprimé ma réponse :-(

Je vais devoir leur demander de le faire.

Vous pouvez essayer de le mettre dans une classe avec des membres statiques. C'est presque la même chose.

Ou bien on peut le décrire de la manière suivante :

class A
 {
  class a{};
 }
class B
 {
  class a{};
 }
 
Zhunko:

J'ai accidentellement supprimé ma réponse :-(

Je vais devoir leur demander de le faire.

Vous pouvez essayer de le mettre dans une classe avec des membres statiques. C'est presque la même chose.

Ou de la même façon :

Merci Vadim, j'ai déjà pensé à une telle solution. Cela ne fonctionnera pas pour moi puisque la bibliothèque de classes standard doit rester inchangée. Avec la bibliothèque tierce est plus drôle :) changement il ne voulait pas changer quoi que ce soit, mais à la fin, qui ne serait pas mess avec les temps inutiles, a changé le nom de la classe en elle et tout ce qui est associé à elle.

Je suis intéressé par les moyens d'éviter ce problème en utilisant les outils MQL4, sans changer les bibliothèques de classe elles-mêmes.

 
Barbarian:

Merci Vadim, j'ai déjà pensé à un moyen similaire. Cela ne fonctionnera pas pour moi car la bibliothèque de classes standard doit rester inchangée. Je ne voulais rien y changer, mais finalement, j'ai changé le nom de la classe dans la bibliothèque et tout ce qui y est associé, pour ne pas me casser la tête.

Je suis intéressé par les moyens d'éviter ce problème en utilisant les outils MQL4, sans changer les bibliothèques de classe elles-mêmes.

C'est ce qu'il est, sans aucun changement ni intervention.
 
AlexeyVik:


Regardez le code de l'indicateur Heiken Ashi.
Je l'ai déjà vidé de son contenu... Il y a un histogramme, si vous ne trouvez pas le moyen de l'utiliser avec des barres...
Raison: