3480

(au passage le sens du shift pour diviser ou multiplier n'a aucun liens avec l'endianess)
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

3481

Zerosquare (./3479) :
Et sinon, si c'est du code de conversion d'endianess, écrire "<<= 8" est plus logique que "*= 256", vu que l'opération qu'on cherche à effectuer est justement un décalage de bits.
Oué je suis d'accord, c'est l'un des cas où ça se justifie bien ^^

3482

Zero: oui parce que la c'est un décalage de bit qu'on cherche, et si demain on a des bits qui peuvent valoir 0,1 et i, le décalage marchera toujours alors que la multiplication sera foireuse..
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

3483

(ah non pitié, il y a déjà suffisamment de trucs indéfinis en C pour pas en créer des nouveaux tongue)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3484

Genre les premiers ordinateurs russes ?
https://en.wikipedia.org/wiki/Setun
avatar
De nouveaux jeux pour vos vieilles consoles ? En 2024 ?
https://yastuna-games.com

3485

Zerosquare (./3479) :
pour les deux premiers trucs, le compilo ne t'a pas mis un warning "code has no effect" (ou message similaire) ?
Je compile avec Visual Studio, et en debug il n'a rien dit (ou du moins, je n'ai rien vu).
Mais c'est ce que j'attends en debug, quelque part. Quand je fais juste Buffer[i];, je suis bien content de pouvoir voir le contenu de Buffer à i, sans aller compter les caractères à la main. smile

Au passage, dommage que les messages d'erreur concernant la STL soient aussi imbitables que ceux de GCC (CLang j'en sais rien).

3486

Folco (./3485) :
Mais c'est ce que j'attends en debug, quelque part. Quand je fais juste Buffer[i];, je suis bien content de pouvoir voir le contenu de Buffer à i, sans aller compter les caractères à la main.
Je comprends, mais je trouve que ça mériterait un warning quand même, parce qu'on écrit rarement ce genre de code en temps normal. Enfin bref.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3487

GCC et CLang font au moins un warning pour le code qui ne fait rien comme la
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

3488

Peut-être avec un switch du compilateur?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

3489

Fadest (./3484) :
Genre les premiers ordinateurs russes ?
https://en.wikipedia.org/wiki/Setun
Intéressant, merci pour la lecture smile
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

3490

Si le sujet des débuts de l'informatique t'intéresse, tu vas découvrir plein de choses insolites, comme les ordinateurs analogiques ou non électriques (mécaniques, pneumatiques, etc.)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3491

Ou un ordinateur avec une bande de papier tournant à haute vitesse, c’est colossal!
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

3492

3493

Conclusion: Contrairement aux pays capitalistes, en URSS, on savait compter jusqu'à 3. tongue
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3494

Euh non, ils ont cru qu'ils étaient capable de compter jusqu'à 3 et il leur a fallu 30 ans pour se rendre compte qu'en fait, ils n'y arrivaient pas embarrassed
avatar
De nouveaux jeux pour vos vieilles consoles ? En 2024 ?
https://yastuna-games.com

3495

Est-ce qu'on peut m'expliquer l'intérêt des passages par référence plutôt que par pointeur en C++ ?
J'en utilise, pour une simple raison : c'est plus facile de manipuler une variable qui semble fournie par valeur que par pointeur.
C'est d'un intérêt suffisant pour que j'utilise des références.

Mais j'imagine qu'il y a d'autres raisons bien plus puissantes, que je n'ai toujours pas comprises, aussi j'aimerais en comprendre l'intérêt et les possibilités, pour m'améliorer.

Ah, si c'est en rapport avec les templates, vu que je n'en utilise pas, hormis "à cause" de la STL, ça ne m'apportera probablement pas grand chose cheeky

Merci bien. smile

3496

sucre syntaxique interdisant je crois les valeurs nulles contrairement aux pointeurs.

si t'as une ref tu sais que t'as un objet kivabien au bout

je crois... je refuse d'utiliser! Trop merdouillesque si tu maitrises pas.

3497

Sinon, il y a aussi le fameux const Foo &foo qui simule le passage par valeur tout en passant l'argument par référence parce que c'est plus efficace (si Foo est un gros objet).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3498

Bah c'est toujours const donc utilisable juste à l'instanciation (équivalent Type* const hu= plop, d'ailleurs Type& hu= plop est Type& const= plop, mais vu que c'est obligatoire c'est pas écrit)
C'est plus transparent par rapport aux pointeurs pour un passage de fonction, ça évite de récupérer l'adresse du truc passé avec & (c'est pas censé être le problème du gars appelant la fonction, c'est presque un détail d'implémentation de la fonction),
Effectivement ça ne risque pas d'être null.
Sinon vu que c'est un alias, je me demande si c'est pas plus facilement géré par le compilateur pour en fait ne... rien faire, et utiliser la variable d'origine (par exemple : int a= 42; int& b= a; cout << b ; remplacé par int a= 42; cout << a; )

Folco (./3495) :
Mais j'imagine qu'il y a d'autres raisons bien plus puissantes
Bof, j'en suis pas si sûr cheeky

3499

Je parle de void foo(BigObject bo);void foo(const BigObject &bo);. L'appelant ne voit quasiment pas la différence et c'est plus efficace comme ça.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3500

Oui bien sûr, d'ailleurs j'ai cross édité en ce sens aussi, c'est clairement un détail d'implémentation de la fonction.

3501

le problème c'est surtout qu'on peut avoir des références de pointeurs et pointeurs vers des références.

celui qui a autorisé ca mérite la pendaison

3502

Oué, un peu comme tout le C++, quoi #modui#
Enfin comme c'est un alias, un pointeur de ref ça pointe l'origine comme si la ref n'existait pas (du moins je crois) et la ref de pointeur c'est pareil que le pointeur tout court.
Mais oui, c'est mixé et ça se marche un peu sur les pieds avec les pointeurs.
Heureusement qu'il existe certains langages plus élégants et propres #modui#

3503

squalyl (./3501) :
le problème c'est surtout qu'on peut avoir des références de pointeurs et pointeurs vers des références.

celui qui a autorisé ca mérite la pendaison
C'est nécessaire pour que le système soit complet, étant donné qu'on peut avoir aussi des pointeurs vers des pointeurs (comme en C – saviez-vous que FirstWindow sur les TI-68k est essentiellement défini comme ***(WINDOW ****)200?).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3504

Folco > je suis très loin d'être spécialiste du C++, mais je vois comme ça : l'utilisation des pointeurs rend visible et accessible l'implémentation sous-jacente des objets, ce qui va à l'encontre des principes de développement orienté objet. En particulier, tu peux mettre le souk en manipulant mal le pointeur. D'où l'existence des références, qui permettent de transmettre "proprement" un objet modifiable à une méthode.

Évidemment en pratique, le compilo utilise le plus souvent des pointeurs pour implémenter les références, mais c'est quelque chose dont tu n'es pas censé te préoccuper si tu fais de l'objet pur.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

3505

Yep, en effet, ça évite les problèmes de manipulation de pointeur (je viens de me taper un beau *truc++; en lieu et place d'un (*truc)++; par exemple.

Et ok, pour e coup de la référence constante Kevin. Mais y a-t-il une différence au final avec un void Foo (BigObject* const bo); ?

3506

Zerosquare (./3504) :
Folco > je suis très loin d'être spécialiste du C++, mais je vois comme ça : l'utilisation des pointeurs rend visible et accessible l'implémentation sous-jacente des objets, ce qui va à l'encontre des principes de développement orienté objet. En particulier, tu peux mettre le souk en manipulant mal le pointeur. D'où l'existence des références, qui permettent de transmettre "proprement" un objet modifiable à une méthode.

Évidemment en pratique, le compilo utilise le plus souvent des pointeurs pour implémenter les références, mais c'est quelque chose dont tu n'es pas censé te préoccuper si tu fais de l'objet pur.
Si tu veux cacher l'utilisation des pointeurs, un smart pointer peut être plus utile qu'une référence.

Folco (./3505) :
Et ok, pour e coup de la référence constante Kevin. Mais y a-t-il une différence au final avec un void Foo (BigObject* const bo); ?
La différence est que const BigObject & s'utilise comme si c'était passé par valeur, alors qu'avec ta solution, il faut passer un pointeur explicitement (probablement en prenant l'adresse: &monobjet), et l'implémentation de la fonction doit aussi utiliser du -> partout. Mais comme code généré, ça devrait donner exactement la même chose, oui.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3507

Ok. Bon donc pour le moment, ce n'est que du sucre syntaxique comme l'a dit squalyl dès la première réponse.
Mais attention, ça me convient déjà ^^

3508

Je ne suis pas tout à fait d'accord, ça a le mérite de ne pas imposer une contrainte au code appelant, à cause d'un détail qui ne l'intéresse pas.
Pour moi c'est un peu plus que du sucre syntaxique.

3509

OK, c'est du sucre syntaxique vanillé.

3510

trilove grin