Deklarieren von Variablen hinter der Schleife oder innerhalb der Schleife? - Seite 9

 
Vict:

Ich verstehe es nicht, oder?

Ich bezweifle, dass Sie das nicht wussten.

Das ist verständlich.

So etwas würde mir gefallen:

.......
int tipa_var;
// бла-бла-бла
..................
// кирдык, дальше она не нужна
удаляю tipa_var
 
Сергей Таболин:

Das ist verständlich.

Ich hätte gerne etwas wie:

Also, die Blöcke einbauen, das mache ich immer so.

int long_lining_var;
/*block*/ {
        int tipa_var;
        ...
} // кирдык, дальше она не нужна

Oder sind zwei Klammern zu viel )?

 
Vict:

Gut und ordnen Sie die Blöcke an, das mache ich immer.

Oder sind zwei Klammern zu viel )?

Es ist nicht nur eine Menge... Es ist wie der Everest auf deinem Kopf... )))))))))

Das ist es, was das Alter bedeutet - ich dachte immer, "zwei Klammern" sollten mit etwas beginnen...

Und dass sie einfach einen Code "lokalisieren" können - ich bin mir nicht sicher....

Lebe und lerne! Lob ... ich )))) - Ich bin immer froh, wenn ich etwas lerne, was ich noch nicht wusste.

Ich danke Ihnen! )))))))))

 
Igor Makanu:

1953-2008 Vater

1953-2019 Schwiegervater

Mein Mitgefühl und Beileid. Ich bin ein Jahr jünger, oder sogar weniger. Ich brauche also meinen Wortschatz nicht mehr aufzufüllen.

 
Alexey Viktorov:

Mein Mitgefühl und Beileid. Ich bin ein Jahr jünger, oder sogar weniger. Ich brauche also meinen Wortschatz nicht mehr aufzufüllen.

OK

Es geht nicht um Vokabeln, sondern darum, zu verstehen, dass Sie vor über 30 Jahren in die Informatik eingeführt wurden und es einfache Programmiersprachen gab, Pascal, Basic, Fortran, Assembler und...

aber die Tatsache, dass man jetzt Windows - Mausklick - Ergebnis oder android/appletophone..... verwendet, ist ein Verdienst der Programmierer, die nicht auf alten effizienten Sprachen sitzen, sondern dank OOP und anderen Programmierparadigmen viele und sehr viele Softwarelösungen schreiben

Neue Programmierstile erhöhen die Geschwindigkeit der Softwareentwicklung, und das ist wichtiger als die Leistung, denn es ist nicht sicher, dass die neue Software vom Markt (den Nutzern) nachgefragt wird, und die Zeit tickt? - Welches der Unternehmen, die Software entwickeln, ist bereit, die Entwicklung einer einzigen Softwarelösung für die gesamte Geschichte des Unternehmens zu übernehmen? - Wenn der Markt (die Benutzer) die Idee einer neuen Software akzeptiert - dann, und nur dann, macht es Sinn, für die Leistung der Software zu kämpfen, selbst wenn man sie in Assembler neu schreibt!

Die Entwickler von Compilern, RAD, Frameworks und anderen Tools passen ihre Produkte ebenfalls an die nachgefragten Technologien an, d.h. letztendlich ist die Vorstellung, dass OOP etwas furchtbar Langsames ist oder kurze Hilfsfunktionen verwendet werden, keine effektive Lösung.... , und wenn ich ein "lineares Stück Code" schreibe - wird es effektiv sein, aber nicht wirklich, und höchstwahrscheinlich wird es das Gegenteil sein

so eine Geschichte ;)

 
Igor Makanu:

OK

Es geht nicht um Vokabeln, sondern darum, zu verstehen, dass Sie vor über 30 Jahren in die Informatik eingeführt wurden und es einfache Programmiersprachen gab, Pascal, Basic, Fortran, Assembler und...

aber die Tatsache, dass man jetzt Windows - Mausklick - Ergebnis oder android/appletophone..... verwendet, ist das Verdienst von Programmierern, die nicht auf alten effizienten Sprachen sitzen, sondern dank OOP und anderen Programmierparadigmen viele, viele Softwarelösungen schreiben

Neue Programmierstile erhöhen die Geschwindigkeit der Softwareentwicklung, und das ist wichtiger als die Leistung, denn es ist nicht sicher, dass die neue Software vom Markt (den Nutzern) nachgefragt wird, und die Zeit tickt? - Welches der Unternehmen, die Software entwickeln, ist bereit, die Entwicklung einer einzigen Softwarelösung für die gesamte Unternehmensgeschichte zu übernehmen? - Wenn der Markt (die Benutzer) die Idee einer neuen Software akzeptiert - dann, und nur dann, macht es Sinn, für die Leistung der Software zu kämpfen, selbst wenn man sie in Assembler neu schreibt!

Die Entwickler von Compilern, RAD, Frameworks und anderen Tools passen ihre Produkte ebenfalls an die nachgefragten Technologien an, d.h. letztendlich ist die Vorstellung, dass OOP etwas furchtbar Langsames ist oder die Verwendung kurzer Hilfsfunktionen keine effektive Lösung ist.... , und wenn ich ein "lineares Stück Code" schreibe - wird es effektiv sein, aber nicht wirklich, und höchstwahrscheinlich wird es das Gegenteil sein

das ist die Geschichte ;)

Ich bin mit allem einverstanden, außer mit einer Sache. MQL ist eine rein softwareorientierte Sprache. Warum sollte man also versuchen, etwas aus ihm herauszuquetschen, was er nicht braucht? Es gibt keinen Grund zu versuchen, einige Berechnungen so schnell wie möglich durchzuführen, wenn von Tick zu Tick viele Millisekunden und manchmal sogar Sekunden vergehen.
 
Alexey Viktorov:
Warum also versuchen, etwas aus ihm herauszuquetschen, das er nicht braucht? Was nützt es, einige Berechnungen so schnell wie möglich durchführen zu wollen, wenn von Tick zu Tick viele Millisekunden, manchmal sogar Sekunden, vergehen.

Manche Leute machen ihre Arbeit wie am Fließband - sie bekommen den TOR (oder ihre Idee), sie machen den Rest - sie bekommen den TOR...

und einige suchen ständig nach einer Möglichkeit, diese Arbeit in ihrer Freizeit in der Hälfte der Zeit zu erledigen

Und einige suchen immer nach einer Möglichkeit, die Ausführung der einzelnen Codefragmente zu beschleunigen und dann die optimale Aufrufstruktur zu finden, um die Leistung zu steigern

Es gibt nur - jeder hat seinen eigenen Weg? ))))

 
Igor Makanu:

Der menschliche Faktor wirkt sich hier aus, manche Leute machen ihre Arbeit wie am Fließband - sie bekommen ihre Aufgaben, sie machen sie - sie bekommen ihre Aufgaben...

Manche suchen ständig nach einem Weg, wie sie das nächste Mal, wenn sie Freizeit haben, doppelt so schnell arbeiten können

Und jemand sucht ständig nach einer Möglichkeit, jedes Codefragment schneller zu machen, und findet dann die beste Struktur von Aufrufen, um es schneller zu machen

Ich glaube, es gibt nur - jeder hat seine eigene Art? ))))

Alles in allem ist dies eine nutzlose Diskussion. Sie verschwenden so viel Zeit damit, herauszufinden, was der Kunde mit diesem Code gemeint hat, dass Sie den Code möglicherweise mehrmals umschreiben müssen. Wie schnell müssen Sie ihn also schreiben? So zu handeln, wie Sie es verstanden haben, und dann zu versuchen, herauszufinden, was der Kunde meinte, als er ein Schiedsverfahren beantragte?

Und im Allgemeinen habe ich nur von Zurückhaltung gesprochen. Es besteht keine Notwendigkeit, den Code in MQL zu überladen, oft mit nutzlosen Objektkreationen.

Es gibt viele Beispiele für Nutzlosigkeit, aber ich habe keine Lust mehr, dieses Thema zu diskutieren.

 
Igor Makanu:

gibt aus, string und print ist kein Indikator für den Umgang mit Variablen

'tst.mq5' tst.mq5 1 1

mögliche Verwendung einer nicht initialisierten Variablen 'c' tst.mq5 16 10

mögliche Verwendung einer nicht initialisierten Variablen 'e' tst.mq5 20 17

erzeugter Code 1 1

0 Fehler, 2 Warnung(en), 526 msec verstrichen 1 3

Ok, es gibt auf, wenn Sie explizit uninitialized in Berechnungen verwenden. Das ist gut.

 
Igor Makanu:

OK

Es geht nicht um Vokabeln, sondern darum, zu verstehen, dass Sie vor über 30 Jahren in die Informatik eingeführt wurden und es einfache Programmiersprachen gab, Pascal, Basic, Fortran, Assembler und...

aber die Tatsache, dass Sie jetzt Windows - Mausklick - Ergebnis oder android/appletophone..... verwenden, ist das Verdienst von Programmierern, die nicht auf alten effizienten Sprachen sitzen, sondern dank OOP und anderen Programmierparadigmen viele und sehr viele Softwarelösungen schreiben

Neue Programmierstile erhöhen die Geschwindigkeit der Softwareentwicklung, und das ist wichtiger als die Leistung, denn es ist nicht sicher, dass die neue Software vom Markt (den Nutzern) nachgefragt wird, und die Zeit tickt? - Welches der Unternehmen, die Software entwickeln, ist bereit, die Entwicklung einer einzigen Softwarelösung für die gesamte Unternehmensgeschichte zu übernehmen? - Wenn der Markt (die Benutzer) die Idee einer neuen Software akzeptiert - dann, und nur dann, macht es Sinn, für die Leistung der Software zu kämpfen, selbst wenn man sie in Assembler neu schreibt!

Die Entwickler von Compilern, RAD, Frameworks und anderen Tools passen ihre Produkte ebenfalls an die nachgefragten Technologien an, d.h. letztendlich ist die Vorstellung, dass OOP etwas furchtbar Langsames ist oder kurze Hilfsfunktionen verwendet werden, keine effektive Lösung.... , und wenn ich ein "lineares Stück Code" schreibe - wird es effektiv sein, aber nicht wirklich, und höchstwahrscheinlich wird es das Gegenteil sein

das ist die Geschichte ;)

Als ich eingestellt wurde, habe ich hauptsächlich im Bereich Embedded, DSP usw. gearbeitet, obwohl ich auch Desktop und Datenbank machen kann, aber das weiß ich jetzt nicht mehr. Nun, auf eingebetteter Ebene reduziert der Wechsel zu OOP die Leistung oft um die Hälfte oder das Doppelte. Es gab eine Menge Arbeit mit Assembler, man liest den generierten Code in asm und sieht, dass es so viele unnötige Gesten gibt. Aber in unserer Realität ist das alles eine Kleinigkeit. Wenn ich eine anständige Grafikkarte kaufe, werde ich für OpenCL schreiben können. Ich werde cool werden ))