Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

stringstream dans un destructeur

2 réponses
Avatar
Sébastien Fraigneau
Bonjour,

En compilant ce programme sous VC6, j'ai une violation d'acces à la
fermeture du programme (pas d'exception levée, l'erreur est visible
seulement dans la fenêtre de debug de VC):
--------------------------------------------------
#include <sstream>

class Test
{
public:
~Test()
{
int unNombre = 123456;
std::stringstream str;
str << unNombre;
}

static Test& getInstance()
{
static Test s_test;
return s_test;
}
};

int main()
{
Test test;
Test::getInstance();
return 0;
}
--------------------------------------------------

Je n'ai pas de problème si unNombre est une chaine de caractère, ni si j'ai
ce genre de chose dans mon main :

int main()
{
Test::getInstance();
return 0;
}

ou

int main()
{
Test test1;
Test test2;
return 0;
}

ou encore

int main()
{
{
Test test;
Test::getInstance();
}
return 0;
}

Etrange ce comportement des stringstream, non ?

2 réponses

Avatar
Samuel Krempp
le Tuesday 07 September 2004 12:06, écrivit :

int main()
{
Test test;
Test::getInstance();
return 0;
}
...

Etrange ce comportement des stringstream, non ?


C'est pas ça qu'il faut dire, mais plutôt :
"Etrange ce comportement de VC6, non ?"

Si tu as la possibilité de remplacer VC6 par un 7 avec toutes ses mises à
jour, tu obtiendras un comportement bcp plus proche de ce que dit la norme.
--
Sam

Avatar
Sébastien Fraigneau
ah ben, ça me rassure. Je me doutais bien que c'était VC6 qui était en
cause. Je vais contourner le problème en attentant d'avoir un compilateur
plus récent.

Merci beaucoup.

"Samuel Krempp" a écrit dans le
message de news:413f46d6$0$7608$
le Tuesday 07 September 2004 12:06, écrivit :

int main()
{
Test test;
Test::getInstance();
return 0;
}
...

Etrange ce comportement des stringstream, non ?


C'est pas ça qu'il faut dire, mais plutôt :
"Etrange ce comportement de VC6, non ?"

Si tu as la possibilité de remplacer VC6 par un 7 avec toutes ses mises à
jour, tu obtiendras un comportement bcp plus proche de ce que dit la
norme.

--
Sam