Bonjour,

Pourquoi ceci ne compile pas (au moins sous gcc 4 et vs2005) ? :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct S
{
	S() {}
};
 
class C
{
	void operator delete(void *) {} //line 8
	S s;
};
 
int main()
{
	new C; //line 15
}
D'après le message d'erreur, l'operator delete semble avoir besoin d'être appelé... mais pourquoi ?
De plus si j'enlève le constucteur de S, il n'y a plus de problème.