L'agonie du choix - page 5

 
sanyooooook:
l'ancien code a été compilé sur la nouvelle version ?
vous ne le croirez pas - il n'a pas compilé du tout :-D
 
Renat:
Montrez-moi le code.
Vous êtes sérieux ? Ici même, sur ce forum, les 9 400 lignes de code ? ))
 
abolk:

Pourquoi un trader non programmeur voudrait-il apprendre le C++ ?

Pourquoi un commerçant non programmeur voudrait-il programmer ? Pourquoi devrait-il apprendre une quelconque langue ? :-D

Ou il devra peut-être devenir un programmeur non professionnel. Et dans ce cas, il peut être utile de commencer par C. Il existe tout simplement d'excellents exemples de livres pour débutants - enfin, dans la mesure où tout est mâché et mis dans la bouche, il est tout simplement impossible de ne pas comprendre)).
 
AlexeyVik:

Peut-être que ce n'est pas le même code, juste le nom de l'indicateur coïncide étrangement avec les noms des captures d'écran, mais voici un exemple clair où un tableau de type int est déclaré qui est passé à une fonction utilisateur, et là le type datetime est accepté.

Eh bien, et un tas d'avertissements sur la re-déclaration de variables et de variables non utilisées.

Oui oui c'est exactement le ZUP. Ancienne version. Je l'ai gardé parce qu'il était livré avec un grand modèle et des paramètres prescrits. Ceux qui savent ce qu'est la ZUP et combien de paramètres elle contient comprendront l'importance de ce point. Et oui en effet il y avait (je ne sais pas comment appeler cela une erreur ...) erreur concernant les types de données datetime et int. Mais on ne voit pas bien ce que cette nouvelle construction vient faire là-dedans. Comme je l'ai déjà mentionné ci-dessus, il existe une notion de "rétrocompatibilité". En général, le résultat est évident - cette rétrocompatibilité même est complètement absente !
Comme je l'ai déjà dit, j'étais simplement trop paresseux pour fouiller dans les milliers de kilos de code de quelqu'un d'autre et y chercher des erreurs. Alors je l'ai laissé tel quel. C'est-à-dire, de n'importe quelle manière :-D Maintenant, je vais essayer de compiler sur l'ancienne version, en suivant les conseils de Sank. Si cela fonctionne, je serai très heureux - j'ai fait de très belles photos :-D
 
mmmoguschiy:
Oui oui, c'est exactement le ZUP. L'ancienne version. Je l'ai gardé parce qu'il était livré avec un grand modèle et des paramètres prescrits. Qui sait ce que la ZUP et ses nombreux paramètres comprendront à quel point c'est important. Et oui en effet il y avait (je ne sais pas comment appeler cela une erreur ...) erreur concernant les types de données datetime et int. Mais on ne voit pas bien ce que cette nouvelle construction vient faire là-dedans. Comme je l'ai déjà mentionné ci-dessus, il existe une notion de "rétrocompatibilité". En général, le résultat est évident - cette rétrocompatibilité même est complètement absente !
Comme je l'ai déjà dit, j'étais simplement trop paresseux pour fouiller dans les milliers de kilos de code de quelqu'un d'autre et y chercher des erreurs. Alors je l'ai laissé tel quel. C'est-à-dire, de n'importe quelle manière :-D Maintenant, je vais essayer de compiler sur l'ancienne version, en suivant les conseils de Sank. Si cela fonctionne, je serai très heureux - le dessin est très beau :-D
Je n'ai pas compté combien de lignes dans ce code, mais il ne m'a pas fallu plus de 30 minutes pour le réparer. Et vous n'êtes pas seulement paresseux, vous êtes tout simplement incapable. Mais n'insinuez pas que je le fais. J'ai exprimé dans ce fil de discussion que ma générosité était déjà terminée.
 
mmmoguschiy:
vous n'allez pas le croire - il n'a pas compilé du tout :-D

quelqu'un l'a fait pour vous).

ZS : ouvrez ex4 avec notepad, si vous pouvez y voir les noms des variables cela signifie qu'il a été compilé avec un ancien compilateur, sinon avec un nouveau.

 
Vinin:
Ce sont des erreurs de développeur. Si ça ne l'était pas, ça aurait marché. Tout aurait fonctionné. Je devais réparer toutes mes erreurs. Mais pas avec le nouveau, mais avec l'ancien. Et toutes les anciennes fonctions fonctionnent. Il y avait des valeurs par défaut valides. Maintenant, il n'y en a plus. Pas de contrôle, le code ne fonctionne pas. Il y a des contrôles. Tout fonctionne.
Quel genre de "bug de développeur" pourrait-il y avoir si le code fonctionnait bien sur l'ancienne version ?
 
mmmoguschiy:
Pourquoi un commerçant non programmeur voudrait-il programmer ? Pourquoi apprendrait-il une quelconque langue ? :-D

Ou bien ils devront devenir des programmeurs non professionnels, bien que non professionnels. Et dans ce cas, il peut être utile de commencer par C. Il existe de très bons exemples de livres pour débutants - enfin, dans la mesure où tout est mâché et mis en bouche, il est tout simplement impossible de ne pas comprendre)).
La réponse est assez simple. Pour vérifier que 95 % des informations contenues dans les livres de commerce ne fonctionnent pas du tout.
 
AlexeyVik:
Je n'ai pas compté combien de lignes il y a dans ce code, mais il ne m'a pas fallu plus de 30 minutes pour le régir. Et vous n'avez pas que de la paresse, vous avez juste une incapacité à le faire. Mais n'insinuez pas que je le fais. J'ai dit dans ce fil que ma générosité était terminée.
Ne jugez pas, de peur d'être jugés ! Je n'ai pas accroché d'étiquettes sur vous, alors veuillez ne pas vous accrocher aussi !

Pour poursuivre la conversation, je n'ai pas rencontré dans ma pratique un miracle tel que le type de données char a été soudainement remplacé par double exactement de même que int a été remplacé par datetime. C'est pourquoi mon désir d'utiliser la télépathie s'est arrêté là. Je n'avais pas la moindre envie de creuser dans des absurdités flagrantes.

Puisque cela a été discuté, pourriez-vous, chers collègues développeurs, expliquer pourquoi int est soudainement devenu datetime (ou vice versa - je ne me souviens pas exactement) ? Et pourquoi dans l'ancienne version, il n'y avait pas d'erreur, et dans la nouvelle, il est apparu soudainement par miracle (s'il y avait une erreur) ?
 
sanyooooook:

cela signifie que quelqu'un l'a fait pour vous)

ZS : ouvrez ex4 avec notepad, si vous pouvez y voir les noms des variables cela signifie qu'il a été compilé avec l'ancien compilateur, sinon, cela signifie qu'il a été compilé avec le nouveau.

yep - le compilateur a l'intelligence artificielle et l'a compilé pour moi :-D

Mais sérieusement - je ne l'ai pas compilé ! Il n'y a pas de fichier .ex4 dans le dossier experts/indicateurs de l'ancienne version. Même après avoir simplement cliqué sur le bouton "compiler", il n'apparaissait pas là ! Quel est le piège ? Les fichiers indicateurs compilés peuvent-ils être créés à un autre endroit du disque ?