30

onur (./29) :
Le langage suprême reste C++ love.

... avec Qt et les kdelibs. smile
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é

31

./28 > Oui et les erreurs de segmentations pour cause de variable non initialisée ça fait perdre du temps et de l'argent.
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

32

GoldenCrystal (./31) :
./28 > Oui et les erreurs de segmentations pour cause de variable non initialisée ça fait perdre du temps et de l'argent.

(J'ai rajouté la mise en relief.)

Ah, j'oubliais, vous ne pensez qu'à ça... roll bang
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é

33

Ouai enfin on n'est pas chez popa et moman.... On a notre vie à gagner...
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

34

./32 , ./33 --> #ad hominem#
Tout ce qui passe pas par le port 80, c'est de la triche.

35

Nan mais n'importe quoi pour le temps d'initialisation... Il n'y a qu'à s'arranger pour virer l'initialisation de la boucle principale si c'est critique, et puis voilà triso

Kevin, je te vois souvent râler contre du code *pas maintenable*, en voilà un bel exemple... Imagine que pour une raison ou pour une autre le format de la chaîne doive être changé par quelqu'un d'autre que le développeur original... Ben il va perdre du temps à comprendre pourquoi le programme plante, et ensuite à identifier toutes les portions du code qui sont concernées...

Quant à tes considérations sur l'argent, parfois on code quelque chose pour un patron, qui lui même le vend à un client, conformément à un devis : on n'a pas un temps infini pour coder la fonctionnalité (incroyable, non ?). C'est désolant si tu ne comprends pas ça.

36

Kevin Kofler (./27) :
Il gère les struct. Son A est une structure, pas une classe.

new A?
Je savais pas qu'on pouvait faire ça sur des struct en C et j'en ai jamais vu...
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

37


#define new(a) ((typeof(a)*)malloc(sizeof(a)))

struct machin {
int truc;
char *bidule;
struct machin *next; /*eventuellement*/
};

struct machin *chose = new(machin);

(chais pas si ça marche en C, j'imagine qu'en C++ ils ont un truc dans le langage)

(ou alors toutes les classes qui contiennent pas de méthodes sont _exactement_ la même chose que des structs? (je crois que c'est ça))

38

Je ne connais pas vraiment le C#, mais d'après l'explication donnée par Onur (./12), le new pour les struct, ça m'a l'air d'être plutôt du:
#define new(a) ((a){})
struct foo x=new(struct foo);

c'est-à-dire que ça initialise toutes les valeurs de la structure à la valeur par défaut, mais crée le tout sur la pile, pas dans un pointeur.
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é

39

ah oui peut etre.
en même temps je m'en fiche un peu du csharp.

40

./38 > Oui c'est ça.
Tout ce qui passe pas par le port 80, c'est de la triche.

41

squalyl (./37) :
(chais pas si ça marche en C, j'imagine qu'en C++ ils ont un truc dans le langage)
(ou alors toutes les classes qui contiennent pas de méthodes sont _exactement_ la même chose que des structs? (je crois que c'est ça))
en C++ la seule différence entre les structures et les classes c'est la visibilité par défaut des champs (public pour les struct et private pour les classes). Donc oui on a new pour les struct aussi tongue
avatar
Combien de tas de bois une marmotte pourrait couper si une marmotte pouvait couper du bois ?

42

En C# c'est même pas ça, puisque tu peux mettre des champs private. La seule différence c'est le lieu de stockage j'ai l'impression: stack vs heap. enfin leur équivalents dans le VM de .NET je suppose.
Tout ce qui passe pas par le port 80, c'est de la triche.

43

Oui en C# tout est private (ou internal pour les classes) par défaut, que ce soit dans un namespace, une classe ou une structure.
Pour le lieu de stockage, oui et non, ça dépend du contexte dans lequel tu te trouves (les types valeurs se trouvent assez souvent stockés dans le tas ^^), mais c'est pas loin de l'idée exacte.
Je pense qu'il faut plutôt regarder ça comme une "équivalence" struct/class <=> valeur/instance.
En général tu te casse les dents la dessus la première fois que tu rencontre une propriété dont le type est une structure... Mais bon, c'est voulu ^^
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

44

Le modèle du C++ est tellement plus logique (struct/class vs. struct/class * plutôt que struct vs. class).
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é

45

C'est aussi le type d'héritage par defaut.

46

En C#, new pour une struct sert juste à appeler le constructeur (mais ne fait aucune réservation de mémoire sur le coup: L'emplacement est déjà réservé lors de la déclaration). D'un autre côté, comme le constructeur par défaut des structs est forcément "tous les champs à zéro ou null selon leur type", appeler ce connstructeur par défaut ne coûte pas vraiment cher...
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

47

Hmm.. Pas si stupide que ça le compilo:
	Int32 idNo;
	try {
		idNo = System.Convert.ToInt32(idStrArr[idStrArr.Count()-2]);
	} catch (System.Exception ex){
		Console.Write(ex.Message);
	}
	if (idNo != curIdNo){...

--> Use of unassigned local variable 'idNo'
	Int32 idNo;
	try {
		idNo = System.Convert.ToInt32(idStrArr[idStrArr.Count()-2]);
	} catch (System.Exception ex){
		Console.Write(ex.Message);
		idNo = -1;
	}
	if (idNo != curIdNo){...

--> OK
Tout ce qui passe pas par le port 80, c'est de la triche.

48

ouais mais en l'occurence, la c'est facile pour lui de detecter ca, contrairement a la boucle...

49

c vrai
Tout ce qui passe pas par le port 80, c'est de la triche.