Problem z string


(przemekKK) #1

Chcę dla testu skompilować:

#include 

#include 


using namespace std;


int main()

{

	string a = "test";


	cout << endl << a << endl;

	system("pause");

	return 0;

}

Ale wyświetla mi błąd:

1>c:\users\przemek\desktop\test\test\test.cpp(10) : error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'std::string' (or there is no acceptable conversion)

Czy wie ktoś o co chodzi?


(Sawyer47) #2

Prawidłowo powinno być . I to chyba tyle, poza tym poprawnie.


(system) #3

Klasa std::cout nie posiada przeładowanego operatora << wstawiania do strumienia dla klasy string musisz użyc funkcji klasy string c_str() która zwraca const char * dla którego klasa cout posiad juz przeładwany operator wstawiania do strumienia np.

std::string sText("Teks");

std::cout<< sText.c_str()<


(przemekKK) #4

Zmieniłem na

#include

i działa, ale od jakiegoś czasu sypie się Visual C++ 2008, m.in. nie otwiera projektów i znikają strzałeczki przy paskach przewijania :frowning:


(Fiołek) #5

To masz jakiś bardzo dziwny problem, coś źle ustawiłeś, jakiś wirus lub inne paskudztwo. Visual sam z siebie czegoś takiego nie robi.