Hallo! Wie finde ich einen Wert in einem zweidimensionalen Array? Sie müssen in der ersten Dimension suchen. Es scheint kein Standardmittel zu geben. Ich danke Ihnen!
Hallo! Wie finde ich einen Wert in einem zweidimensionalen Array? Sie müssen in der ersten Dimension suchen. Es scheint kein Standardmittel zu geben. Ich danke Ihnen!
Auf die altmodische Art. Zyklus. Wenn es gleich ist, war's das.
Ich hatte ein Problem beim Schreiben eines Nachkommens einer Basisklasse, der Compiler schreibt - "'ХХХХХХХ' - wrong parameters count".
Ich habe lange nach dem Grund gesucht, Artikel und Fachbücher gelesen,
aber ich habe es gefunden - die Basisklasse hat einen Konstruktor, es ist einer und parametrisch.
Ich habe auch eine Lösung gefunden - Überladung der Konstruktorfunktion mit dem Standardkonstruktor,
aber dann muss ich alle Parameter des parametrischen Konstruktors der Basisklasse in den Konstruktor des Nachfolgers ziehen, damit die Logik stimmt.
Gibt es noch andere Möglichkeiten?
Gibt es eine Möglichkeit, bei der Deklaration einer Nachfolgeklasse, an wen was zu verteilen? Zum Beispiel: diese Parameter für den Konstruktor der Basisklasse und diese Parameter, damit der Nachkomme sich nicht langweilt...
Wenn eine Basisklasse einen einzigen parametrischen Konstruktor hat, kommt die Nachfolgeklasse nicht umhin, ihn aufzurufen. Die untergeordnete Klasse kann jedoch eine beliebige Anzahl von Parametern haben, auch ganz ohne Parameter. Das Wichtigste ist, dass der Konstruktor der Basisklasse mit allen ihm zugewiesenen Parametern aufgerufen wird. Beispiel:
class CParent
{
public:
CParent(int myID, string myName, double myValue)
{
id = myID;
name = myName;
value = myValue;
}
private:
int id;
string name;
doublevalue;
};
class CChildOne : CParent
{
public:
CChildOne() : CParent(2, "CChildOne", 2.34){;}
};
class CChildTwo : CParent
{
public:
CChildOne(int myID, int param) : CParent(myID, "CHildTwo", 2.56)
{
xParam = param;
}private:
double xParam;
};
Ok, ich habe es, PositionSelect() gibt false zurück, und PositionType() gibt den Typ der zuletzt ausgewählten Position zurück.
es stellt sich heraus, dass, wenn keine Position eröffnet ist, immer 0 zurückgegeben wird, d.h. als ob eine Kaufposition eröffnet wäre?
Wie kann ich das umgehen?
PositionSelect() wird ausgewählt, wenn es eine Position gibt, unabhängig von ihrem Typ, 0 - keine Position, 1 - ja, und der Typ ist als bequem definiert.
Es gibt zwei Varianten derOnCalculate-Funktionsdefinition:
1)intOnCalculate (constint rates_total, // size of array price[]
constint prev_calculated, // verarbeitete Balken beim vorherigen Aufruf constint begin, // ab dem signifikante Daten beginnen constdouble& Preis[] // Array für die Berechnung );
2)intOnCalculate (constint rates_total, // Größe der Eingabezeitreihe
Es gibt zwei Varianten derOnCalculate-Funktionsdefinition:
1)intOnCalculate (constint rates_total, // size of array price[]
constint prev_calculated, // verarbeitete Balken beim vorherigen Aufruf constint begin, // ab dem signifikante Daten beginnen constdouble& Preis[] // Array für die Berechnung );
2)intOnCalculate (constint rates_total, // Größe der Eingabezeitreihe
Ich erstelle meine eigene, in die ich dieOnCalculate()-Funktion schreibe, aber wenn ich sie mit Parametern fülle, erzeugt sie Fehler - bitte senden Sie mir ein Beispiel.
Hallo! Wie finde ich einen Wert in einem zweidimensionalen Array? Sie müssen in der ersten Dimension suchen. Es scheint kein Standardmittel zu geben. Ich danke Ihnen!
Hallo! Wie finde ich einen Wert in einem zweidimensionalen Array? Sie müssen in der ersten Dimension suchen. Es scheint kein Standardmittel zu geben. Ich danke Ihnen!
Ich habe begonnen, OOP zu studieren.
Ich hatte ein Problem beim Schreiben eines Nachkommens einer Basisklasse, der Compiler schreibt - "'ХХХХХХХ' - wrong parameters count".
Ich habe lange nach dem Grund gesucht, Artikel und Fachbücher gelesen,
aber ich habe es gefunden - die Basisklasse hat einen Konstruktor, es ist einer und parametrisch.
Ich habe auch eine Lösung gefunden - Überladung der Konstruktorfunktion mit dem Standardkonstruktor,
aber dann muss ich alle Parameter des parametrischen Konstruktors der Basisklasse in den Konstruktor des Nachfolgers ziehen, damit die Logik stimmt.
Gibt es noch andere Möglichkeiten?
Gibt es eine Möglichkeit, bei der Deklaration einer Nachfolgeklasse, an wen was zu verteilen? Zum Beispiel: diese Parameter für den Konstruktor der Basisklasse und diese Parameter, damit der Nachkomme sich nicht langweilt...
Wenn eine Basisklasse einen einzigen parametrischen Konstruktor hat, kommt die Nachfolgeklasse nicht umhin, ihn aufzurufen. Die untergeordnete Klasse kann jedoch eine beliebige Anzahl von Parametern haben, auch ganz ohne Parameter. Das Wichtigste ist, dass der Konstruktor der Basisklasse mit allen ihm zugewiesenen Parametern aufgerufen wird. Beispiel:
Es gab eine Diskussion in dem Thread über
ENUM_POSITION_TYPE
zwei Werte. Und was wird zurückgegeben, wenn es keine offenen Stellen gibt?
Ich verwende die Methode PositionType() aus der Standardbibliothek.
Ok, ich habe es, PositionSelect() gibt false zurück, und PositionType() gibt den Typ der zuletzt ausgewählten Position zurück.
es stellt sich heraus, dass, wenn keine Position eröffnet ist, immer 0 zurückgegeben wird, d.h. als ob eine Kaufposition eröffnet wäre?
Wie kann ich das umgehen?
Es gab eine Diskussion in dem Thread über
ENUM_POSITION_TYPE
zwei Werte. Und was wird zurückgegeben, wenn es keine offenen Stellen gibt?
Ich verwende die Methode PositionType() aus der Standardbibliothek.
Ok, ich habe es, PositionSelect() gibt false zurück, und PositionType() gibt den Typ der zuletzt ausgewählten Position zurück.
es stellt sich heraus, dass, wenn keine Position eröffnet ist, immer 0 zurückgegeben wird, d.h. als ob eine Kaufposition eröffnet wäre?
Wie kann ich das umgehen?
Es gibt zwei Varianten derOnCalculate-Funktionsdefinition:
1)int OnCalculate (const int rates_total, // size of array price[]
const int prev_calculated, // verarbeitete Balken beim vorherigen Aufruf
const int begin, // ab dem signifikante Daten beginnen
const double& Preis[] // Array für die Berechnung
);
2)int OnCalculate (const int rates_total, // Größe der Eingabezeitreihe
const int prev_calculated, // beim vorherigen Aufruf verarbeitete Balken
const datetime& time[], // Zeit
const double& open[], // Öffnen
const double& high[], // Hoch
const double& low[], // Niedrig
const double& close[], // Schließen
const long& tick_volume[], // Tick-Volumen
const long& volume[], // Real Volume
const int& spread[] // Spread
);
Rufen Sie die Funktion 1)OnCalculate()auf und füllen Sie alle Parameter vor - OnCalculate(rates_total,0,0,_price);
FRAGE: Können Sie bitte die Parameter für den zweiten Aufruf vonOnCalculate() in diesem Fall angeben?
Es gibt zwei Varianten derOnCalculate-Funktionsdefinition:
1)int OnCalculate (const int rates_total, // size of array price[]
const int prev_calculated, // verarbeitete Balken beim vorherigen Aufruf
const int begin, // ab dem signifikante Daten beginnen
const double& Preis[] // Array für die Berechnung
);
2)int OnCalculate (const int rates_total, // Größe der Eingabezeitreihe
const int prev_calculated, // beim vorherigen Aufruf verarbeitete Balken
const datetime& time[], // Zeit
const double& open[], // Öffnen
const double& high[], // Hoch
const double& low[], // Niedrig
const double& close[], // Schließen
const long& tick_volume[], // Tick-Volumen
const long& volume[], // Real Volume
const int& spread[] // Spread
);
Rufen Sie die Funktion 1)OnCalculate()auf und füllen Sie alle Parameter vor - OnCalculate(rates_total,0,0,_price);
FRAGE: Können Sie bitte die Parameter für den zweiten Aufruf vonOnCalculate() in diesem Fall angeben?
und im ersten oder zweiten Fall muss nichts ausgefüllt werden.
Ich muss diese Funktion zwangsweise aufrufen - wie gebe ich in diesem Fall die Parameter ein?
Sie können keine eigene erstellen.