2015-11-03 9 views
5

Il seguente programma semplice non può essere compilato in Cygwin con gccCygwin: g ++ 5.2: 'to_string' non è un membro di 'std'

#include <string> 
#include <iostream> 

int main() 
{ 
    std::cout << std::to_string(4) << std::endl; 
    return 0; 
} 

Riga di comando:

$ g++ -std=c++0x to_string.cc 

errore :

to_string.cc: In function ‘int main()’: 
to_string.cc:6:16: error: ‘to_string’ is not a member of ‘std’ 
    std::cout << std::to_string(4) << std::endl; 

versione G ++:

$ g++ --version 
g++ (GCC) 5.2.0 
Copyright (C) 2015 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 

Lo stesso codice può essere compilato in Ubuntu.

È possibile compilare questo codice con cygwin o è necessario scrivere una soluzione alternativa?

+1

Potrebbe essere necessario utilizzare '-std = C++ 11' invece di' -std = C++ 0x' – NathanOliver

+1

@NathanOliver lo stesso risultato. – Alex

+0

Hai controllato quale intestazione '' viene utilizzata? –

risposta

-1

si stia mescolando gcc e g ++ qui

Per citare Mike F: "La differenza probabilmente più importante nei loro valori di default è che biblioteche si collegano automaticamente contro."

What is the difference between g++ and gcc?

+0

Ho modificato la mia domanda. – Alex

+3

Ovviamente usa g ++ per compilare il file, vedere la sua linea di comando. Quindi questo dovrebbe essere assolutamente soddisfacente. – leemes

+0

@leemes Perché non controlli gli orari della mia risposta e la modifica di Alex? –

Problemi correlati