Syntaxe étrange en C++ avec GCC (résolu)

Syntaxe étrange en C++ avec GCC (résolu) - C++ - Programmation

Marsh Posté le 11-06-2009 à 06:41:26    

Salut,
 
As-tu déjà vu quelque chose du genre en C++?
 

Code :
  1. class Hum_Hum
  2. {
  3. public:
  4.    Hum_Hum() = default;
  5.    ~Hum_Hum() = default;
  6.        
  7.    Hum_Hum(int i) = delete;
  8. };


 
Si on fait un new Hum_Hum(1);
Le compilateur dit que Hum_Hum::Hum_Hum(int) a été supprimée.
 
Mais pour le "default" de Hum_Hum::Hum_Hum() je ne vois pas, ou peut-être pour permettre de résoudre des cas d'ambiguïté.
 
Pouvez-vous m'en dire plus à propos de ce "delete" et de ce "default" et si on peut mettre autre chose après le signe "=" (sauf bien sûr le zéro des méthodes virtuelles pures) ?
Un lien vers une doc ou un site de référence serait apprécié.


Message édité par Corebreaker le 14-06-2009 à 11:47:38
Reply

Marsh Posté le 11-06-2009 à 06:41:26   

Reply

Marsh Posté le 11-06-2009 à 11:55:25    

C'est pas du standard, c'est une proposition de standard, faudrait que je retrouve le papier...

Reply

Marsh Posté le 11-06-2009 à 12:01:40    

Reply

Marsh Posté le 11-06-2009 à 12:06:13    

C'est acccepté dans C++0X avec son copain =delete

Reply

Marsh Posté le 11-06-2009 à 12:25:07    

Ah c'est du C++0X, merci.
La vache, j'ai trop fait de java, le retour au C++ est rude avec cette nouvelle norme. Faut que je me mette à jour!
 
Merci.

Reply

Marsh Posté le 11-06-2009 à 14:29:23    

Joel F a écrit :

C'est acccepté dans C++0X avec son copain =delete


Euh, je vois pas trop où chopper la liste de toutes les additions, une idée ?

Reply

Marsh Posté le 11-06-2009 à 14:50:57    

Il y a plein de liens sur la page à l'adresse:http://fr.wikipedia.org/wiki/C++0x
Effectivement j'ai trouvé cette syntaxe dans ce standard, ils s'y trouvent sur un des liens je ne sais plus lequel.


Message édité par Corebreaker le 11-06-2009 à 14:53:59
Reply

Marsh Posté le 11-06-2009 à 19:20:09    

Taz a écrit :


Euh, je vois pas trop où chopper la liste de toutes les additions, une idée ?


la page wikipedia est pas mal pour ça

Reply

Sujets relatifs:

Leave a Replay

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