Merci pour vos réponses! J'utilisais déjà inline mais je n'étais pas certains qu'à chaque fois, le compilateur remplaçait l'appel de fonction par la fonction elle-même. Je pensais que c'était le compilateur qui décidait si oui ou non il y avait lieu de le faire... Excellente information
!
utiliser un maximum le modificateur
const
A ce propos, je passe mes gros objets par référence:
void mafonction(const &grosobjet obj) { /*...*/}
Je ne passe donc qu'un pointeur sur mon objet et je dis au compilateur que l'on ne doit pas modifier les valeurs de l'objet: elles sont constantes. C'est ce que je veux! Le problème c'est qu'alors je ne sais plus accéder aux fonctions de mon objet:
obj.unefonctionquelconque(...)
Je n'ai plus accès au pointeur this. J'ai déjà vu des solutions où les fonctions étaient déclarées
void unefonctionquelconque(...) const
. Je ne sais pas vraiment ce que signifie cette notation. Mais si elle fonctionne, je me vois mal faire la double déclaration à chaque fois... Y-a-t'il une astuce?
Partager