Appeller une fonction d'une classe directement

Appeller une fonction d'une classe directement - C++ - Programmation

Marsh Posté le 30-10-2003 à 13:53:01    

Salut,
 
je voulais savoir s'il était possible (et comment) d'appeller directement une fonction d'une classe sans créer un objet de cette classe:
 
MaClasse::fonction();
 
Merci d'avance!!

Reply

Marsh Posté le 30-10-2003 à 13:53:01   

Reply

Marsh Posté le 30-10-2003 à 13:54:56    

il faut que la méthode soit statique.

Reply

Marsh Posté le 30-10-2003 à 13:58:50    

Oui, et je viens de me souvenir que c'est encore mieux d'utiliser les namespace...
 
Merci!

Reply

Marsh Posté le 31-10-2003 à 19:50:06    

un namespace et une classe c'est pas pareil hein quand-même ...


---------------
-( BlackGoddess )-
Reply

Marsh Posté le 01-11-2003 à 14:24:55    

Oui, mais je me suis souvenu de ça dans mes Bookmarks:
 
Préférez les namespaces anonymes aux static C

Reply

Marsh Posté le 01-11-2003 à 17:13:33    

ca a rien a voir

Reply

Marsh Posté le 01-11-2003 à 17:34:59    

classe avec methode statique :
 

Code :
  1. class Truc
  2. {
  3.   public :
  4.   static void coucou() { cout << "coucou" << endl; }
  5. };
  6. // main.cpp
  7. Truc::coucou();


 
namespace anonymes :
 

Code :
  1. namespace
  2. {
  3. void coucou_2() { cout << "hello" << endl; }
  4. }
  5. //main.cpp
  6. coucou();

Reply

Marsh Posté le 05-11-2003 à 13:43:45    

Joel F a écrit :

classe avec methode statique :
 

Code :
  1. class Truc
  2. {
  3.   public :
  4.   static void coucou() { cout << "coucou" << endl; }
  5. };
  6. // main.cpp
  7. Truc::coucou();


 
namespace anonymes :
 

Code :
  1. namespace
  2. {
  3. void coucou_2() { cout << "hello" << endl; }
  4. }
  5. //main.cpp
  6. coucou();




 
Oui, mais moi j'ai fait:

Code :
  1. namespace Truc
  2. {
  3. void coucou_2() { cout << "hello" << endl; }
  4. }
  5. //main.cpp
  6. Truc::coucou();


 
Ca marche comme je veux

Reply

Marsh Posté le 05-11-2003 à 14:54:08    

certes mais la tu utilise un namespace et non une classe avec méthode statique, ce qui etait ce que laissait croire ton post original :p

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed