Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Programmation > Langage C++ > champ de fonction? > Lecture du sujet

champ de fonction?

Vous devez être inscrit pour pouvoir poster des messages

RésoluLe problème de ce sujet a été résolu

Page : 1 
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : 1 
Hors ligne Omegadark # Posté le 02/06/2007 à 00:57:16
Avatar
Groupe : Membres
Bonjour,

Je suis tombé sur un tutorial assez compliqué pour les moteurs 3D (de Laurent Gomila pour ceux qui connaissent), et j'ai déjà eus à réviser ou apprendre pas mal de choses tellement c'est compliqué pour moi (et pourtant j'ai finis le cours C++ du site du zéro et d'autres trucs aussi).
Dernièrement je suis tombé sur ça:

Code : C++

static IRenderer& Get();
{
Assert(s_Instance != NULL);
return *s_Instance;
}

//Plus loin
IRenderer::Get().DrawMeASheep();


J'ai mis la déclaration de la fonction en même mais elle je l'ai compris, mais l'appel... J'ai rien compris -_-.
C'est quoi au juste et comment ça marche?

Merci d'avance et désolé si la réponse est vraiment simple (si je suis un pire noob en posant cette question).

Pour info: il est question de dll dans la partie où il y a ce code.

Plomeg powaaaaa
 
Connecté gouttegd # Posté le 02/06/2007 à 04:57:22
Avatar
Groupe : Membres
Salut,

C'est donc ça
Code : C++
IRenderer::Get().DrawMeASheep();

que tu n'as pas compris ?

Cette instruction renferme en fait deux appels :

a) Un appel à la méthode Get() de IRenderer (méthode de classe, donc l'appel est de la forme Classe::Méthode()) ; cette méthode renvoie un objet du type de sa propre classe, soit un IRenderer.

b) Un appel à la méthode d'instance DrawMeASheep() de la même classe, à partir de l'instance renvoyée par la méthode statique précédente.

Pour info, la méthode statique Get correspond au design pattern Singleton (le lien pointe vers une explication en Java, mais le principe est le même).

« Je vous aiderai si vous me promettez d'aider quelqu'un d'autre en retour. » --- Anonyme
« Soyez vigilant lorsque vous vous exprimez dans un forum électronique. Vos fautes de frappes et de syntaxe vous poursuivront pour l'éternité. » --- Linus B. Torvalds

http://fr.hypo-theses.com/
 

Retour au forum "Langage C++" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 150 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0224s (0.0071s)