|
Dernière réponse | ||
---|---|---|
Sujet : [C++] Classes, objets, ... | ||
godbout |
|
Aperçu |
---|
Vue Rapide de la discussion |
---|
godbout |
|
BENB |
|
godbout | ok j'crois qu'on peut donc s'arreter la, sinon ca voudrait dire que je suis un cas desespere :D
ca va venir avec le temps Merci ;) |
El_gringo |
|
BENB | GodBout > El_Gringo est un peu violent (sisi :D) mais il n'a pas tors (sur le fond en tout cas :D) si tu peux faire le 2 te semble equivalent au 1 alors fait le 2...
youdontcare > :jap: du pragmatisme quoi... [edtdd]--Message édité par BENB--[/edtdd] |
youdontcare | Godbout > attention à ne pas tomber dans "l'excès" de réflexion. tu essayes de sortir une règle générale de cas particuliers qui peuvent être fonction de goût personnels ou de choix particuliers dépendant d'un contexte. essayer de trouver une "règle magique" qui marche partout dans tous les cas ne peut que te frustrer, car ça n'existe pas :)
les réponses précédentes t'ont déjà donné pas mal de points sur lesquels bosser. relis-les et applique-les. autre chose : lorsque j'ai commencé le c++, ça m'a énormément aidé de regarder du code déjà fini, comme les sources des mfc ou de la sdk de max. là encore ce ne sont pas des règles absolues à suivre en toutes circonstances mais des idées potentielles à appliquer dans ton code. bref, tes problèmes seront résolus avec l'expérience, pas en essayant de tout comprendre d'un coup :) |
godbout |
|
El_gringo |
|
BENB |
|
godbout |
[edtdd]--Message édité par Godbout--[/edtdd] |
El_gringo |
|
chrisbk | ben disons que parfois elles ont besoin d'autre chose que la variable private bon, attends que je trouve un exemple..... class Interpole { public: .... float getInterp(float val); private: float start, end; float interp(float val); } float Interpole::getInterp(float val) { return interp(val); } float Interpole::interp(float val) { return (start * (1-val) + end * (val) ); } bon l'exemple est culcul parce que la fonction public ne fais que retourner le res de la fonction private, mais peut etre maintenant tu vois l'idee : val n'as pas besoin d'etre variable membre, elle sert trop peu (si y'a d'autre calcul plus complique pour l'interpolation, tu feras peut etre d'aure fonction private avec val comme parametre) |
BENB |
[edtdd]--Message édité par BENB--[/edtdd] |
godbout | Je capte l'histoire des variables globales et des parametres (en C), mais ce qui m'embete c'est le fait que les variables private sont dispo pour toutes les fonctions de la classes, alors je vois pas a koi ca sert de passer des param.
et je vois pas comment les renvoyes, les reutiliser, etc.. [edtdd]--Message édité par Godbout--[/edtdd] |
chrisbk | ben oui elle peuvent avoir des parametres.
encore heureux :D Si tu veux ces des fonctions comme les autres : tu les mets en foncton pour pas avoir plusieurs fois le meme bout de code a droite a gauche . (mais ce qu'elle prenne en parametre n'a pas a etre obligatoirement stocke en variable membre, de meme qu'en C tu ne feras pas une variable globale pour t'eviter a faire des paramtres....tu me suis ?) |
godbout | pourtant j'ai recupere un loader 3ds fait avec des classes et toutes les fonctions private avaient des parametres, mais c'est surement parce qu'elles etaient recursives.
Sur ce je pars bosser ;) |
BENB |
|
godbout | Au fait si j'ai bien compris, une fonction en private n'a pas besoin de parametre, si on met en variable private les variables dont elle se sert ? |
godbout | ben surtout que j'ai deja mes petites conventions, mais bien sur pas pour les classes encore. |
BENB |
|
BENB |
[edtdd]--Message édité par BENB--[/edtdd] |
godbout | Eh ben au moins j'ai le choix avec tout ca :D
C'est vrai que les Maj/min j'aime pas trop. Pour le reste je crois que ca va venir en programmant. |