Fehler, Irrtümer, Fragen - Seite 2361

 
Artyom Trishkin:

Vielleicht sollte sie in den Funktionen angezeigt werden?

Ich werde versuchen, sie zu entwerfen.

 
Kommentare, die sich nicht auf dieses Thema beziehen, wurden nach "Fragen von MQL4 MT4 MetaTrader 4 Anfängern" verschoben.
 

Liebe Webdesigner der Website,

Hier ist ein Screenshot der Nachrichten, bitte sagen Sie mir, welcher Gesprächspartner gerade ausgewählt ist


Schon klettern meine Augen auf meine Stirn, um zu verstehen, an wen ich schreibe .....

Bitte kennzeichnen Sie diejenigen, denen Sie nicht geantwortet haben, diejenigen, denen Sie geantwortet haben, und die Person, der Sie eine SMS schreiben, mit einem eigenen Farbcode ...

 
Vladimir Pastushak:

Liebe Webdesigner der Website,

Hier ist ein Screenshot der Nachrichten, bitte sagen Sie mir, welcher Gesprächspartner gerade ausgewählt ist


Schon klettern meine Augen auf meine Stirn, um zu verstehen, an wen ich schreibe: .....

Bitte kodieren Sie diejenigen, denen ich nicht geantwortet habe, diejenigen, denen ich geantwortet habe, und einen separaten Farbcode für die Person, der ich gerade schreibe...

2

Ich stimme allerdings zu. Man merkt es nicht immer, es gibt wenig Kontrast.

 
Vladimir Pastushak:

Hier ist ein Screenshot der Nachrichten, bitte sagen Sie mir, welcher Gesprächspartner gerade ausgewählt ist

in Chrome(71.0.3578.98) ok in FF (64) überhaupt nicht sichtbar
 
Generell wäre es gut, die gesamte Website kontrastreicher zu gestalten.
 

ob es möglich ist, einen *CObject-Zeiger in MQL zu dereferenzieren?

Ich habe verschiedene Varianten ausprobiert, hier ist ein Skript zum Testen, ich füge 3 Myclass-Elemente zur verknüpften Liste hinzu und ändere dann die Werte der CMyclass-Felder, es funktioniert:

#include <Object.mqh>
#include <Arrays\List.mqh>
//+------------------------------------------------------------------+
class CMyclass:public CObject
  {
public:
   int               x;
   double            y;
   void              CMyclass(void):x(-1),y(-2.2) { }
  };
//+------------------------------------------------------------------+
void OnStart()
  {
   CList *base=new CList;
   CMyclass *result;
   for(int i=0;i<3;i++)
     {
      base.Add(new CMyclass);
      result=base.GetCurrentNode();
      result.x = 99;
      result.y = -555.5;
     }
   for(int i=0;i<3;i++)
     {
      result=base.GetNodeAtIndex(i);
      Print(result.x," : ",result.y);
     }
   delete base;
  }
//+------------------------------------------------------------------+

Kann ich Felder von dynamisch erstellten CMyclass-Elementen ändern, ohne den ZwischenzeigerCMyclass *result ?

Etwa so:(CMyclass *)(base.GetCurrentNode()).x = 99;

PS: Ich vermute, wir müssen typedef verwenden, aber bisher erfolglos

 
Igor Makanu:

ob es möglich ist, einen *CObject-Zeiger in MQL zu dereferenzieren?

Ich habe verschiedene Varianten ausprobiert, hier ist ein Skript zum Testen, ich füge 3 Myclass-Elemente zur verknüpften Liste hinzu und ändere dann die Werte der CMyclass-Felder, es funktioniert:

Kann ich Felder von dynamisch erstellten CMyclass-Elementen ändern, ohne den ZwischenzeigerCMyclass *result ?

Etwa so:(CMyclass *)(base.GetCurrentNode()).x = 99;

PS: Ich vermute, wir müssen typedef verwenden, aber bisher erfolglos

Ich weiß nicht, was die Bibliothek CList macht, aber ich habe das so gemacht

#define  alive(node)  (CheckPointer(node)==POINTER_DYNAMIC)
#define  loopf(type, node)  for(type *o=alive(node)?node.First():NULL; alive(o); o=alive(o)?(alive(o.Next())?o.Next():NULL):NULL)
//.....
      loopf(COrder, corr){
         if((fabs(o.StopLoss()-sl)>=_point(o.Symbol())) || (fabs(o.TakeProfit()-tp)>=_point(o.Symbol()))){
            o.SLTP(sl, tp);
         }
      }
//.....
 
Ilya Malev:

Ich weiß nicht, was die Bibliothek CList macht, aber ich habe das so gemacht

Danke, das ist nicht das, wonach ich suche, Ihr Beispiel ist in der Tat eine Typumwandlung per Funktionsaufruf

SZZ: Ich bin es nicht gewohnt, mit Zeigern in MQL zu arbeiten, ich versuche es zu verstehen. Dieses Beispiel scheint einfach zu sein und zu funktionieren, aber ich habe keine Lösung gefunden, wie ich das ErgebnisGetCurrentNode () -->CObject * zu meinem TypCMyclass.... bringen kann.Natürlich kann ich denCMyclass-Konstruktorverwenden, aber ich hoffe, dass es möglich ist , eine saubere Lösung in MQL auszuarbeiten

 
Igor Makanu:

Danke, das ist nicht das, wonach ich suche, Ihr Beispiel ist in der Tat eine Typumwandlung per Funktionsaufruf

SZZ: Ich bin nicht gewohnt, mit Zeigern in MQL zu arbeiten, ich versuche, dieses einfache und funktionierende Beispiel zu verstehen, aber ich habe keine Lösung gefunden, um das ErgebnisGetCurrentNode () -->CObject * zu meinem TypCMyclass.... zu bringenNatürlich kann ichCMyclass-Konstruktor verwenden, aber ich hoffe, es gibt eine intelligente Lösung der Typumwandlung in MQL

Ich habe dort keine Funktionen, mein Problem ist das, das Sie beschrieben haben. Meine Basisklasse ist CNode (mit den Methoden Prev(), Next() usw.) Die Schleife ruft Felder von COrder auf, das sein Nachkomme ist. Die Schleife wird 1 Mal in defines deklariert und dann überall verwendet.

Grund der Beschwerde: