dziwny problem z klasą C++

2012-04-05 13:10
0

Używam Microsoft Visual Studio 2010 Express i on ma jakiś dziwny błąd
Kod:

 #include <iostream>
#include <string.h>
using namespace std;

// Jakastam klasa
class kot {
/***************************************************************************/
private:
    string imie;
    string kolor;
    string rasa;
    int wiek;
/***************************************************************************/
public:
    void ustawianie(string i, string k, string r, int w)
    {
        imie = i;
        kolor = k;
        rasa = r;
        wiek = w;       
    }
/************************************************************************/
    void wypisz()
    {
        cout << imie << endl  // Tu ciągle podkreśla mi te cout tak jakby to bylo zle ;/
             << kolor << endl 
             << rasa << endl 
             << wiek << endl;
    }
};
///////////////////////////////////////////////////////////////////////////////////////////

int main()
{
    kot Hubertus;
    Hubertus.ustawianie("Hubertus" , "grafit" , "Perski" , 2);
    Hubertus.wypisz();
    system("pause"); // to tak na szybko wpisalem zawsze uzywam cin.ignore() i cin.get();
}

nie wiem o co chodzi ;/

------------DODANE -----------------------
Już wiem gdzie jest błąd błąd był w:

 #include <string.h>

miało być bez tego .h:

 #include <string> 

edytowany 1x, ostatnio: liske1, 2012-04-05 13:25

Pozostało 580 znaków

2012-04-05 13:28
0

Sprawdzałem w CodeBlocks i wyświetliło mi błąd z system("pause") - pomogło dodanie biblioteki <windows.h>
Zaś w Visualu pomogła zmiana biblioteki <string.h> na <string> :)

Pozostało 580 znaków

2012-04-05 18:52
0
Bastek0 napisał(a)

Visualu pomogła zmiana biblioteki <string.h> na <string> :)
bo w "string.h" (w c++ "cstring") nie ma klasy string tylko funkcje pomocne przy operacjach na tzw. c-stringach. "cstring" to jest to samo co "string.h" tylko zawarty w przestrzeni nazw std. Natomiast ty potrzebowałeś klasy string, która znajduje się w nagłówku "string".


"..."
"odp"
"qtMaster"
Szczerze troche nie rozumiem troche rozumiem ;/ może w przyszłości zrozumiem całość :D - liske1 2012-04-05 19:04
<cstring>==<string.h> - biblioteka C zawierająca funkcje operujące na łańcuchach tekstowych; <string> - biblioteka zawierająca klasę std::string - rafal__ 2012-04-05 21:05

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0