(Re)bonsoir,
est-ce que:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
	void test(const char *val)
	{
		int n;
		std::string str(val);
		std::istringstream strs(str);
		strs >> n;
	}
peut être réduit en:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
	void test(const char *val)
	{
		int n;
		std::istringstream(std::string(val)) >> n;
	}
les deux syntaxes sont équivalentes?

Pourquoi par contre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
	void test(const char *val)
	{
		int n;
		std::istringstream strs(std::string(val));
		strs >> n;
	}
donne une erreur de compilation
error C2296: '>>' : illegal, left operand has type 'std::istringstream (__cdecl *)(std::string)'?