Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Prosta klasa i działania na obiekcie

Ostatnio zmodyfikowano 2012-11-22 21:19
Autor Wiadomość
Oloro
Temat założony przez niniejszego użytkownika
Prosta klasa i działania na obiekcie
» 2012-11-22 20:03:41
Na wstępie chciałbym zaznaczyć, że jestem całkowitym i kompletnym samoukiem a lekcje informatyki w całym moim okresie nauczania dotyczyły pakietu Office :p. Uczę się z tego oto kursu http://www.cs.put.poznan.pl/arybarczyk/Kurs C++.pdf.

Mój problem dotyczy jednego z zadań, które polega na stworzeniu prostej klasy książki i utworzenia obiektu tej klasy. Sam postanowiłem pójść trochę dalej i stworzyć kilka metod dzięki którym będzie można na obiekcie tej klasy coś wykonać (wybaczcie za ewentualne złe umieszczenie/nie umieszczenie kodu w ramce, ale albo jestem już ślepy albo nie widzę tutaj żadnych informacji w jaki sposób można takowe umieszczać np. bbcode).

Plik nagłówkowy class.h:

C/C++
enum COLOR { C_RED, C_BLUE, C_GREEN };

class CBook
{
private:
    int m_IloscStron;
    COLOR m_Okladka;
    bool m_Stan;
public:
    void Otworz( int iStrona ) { m_Stan = true; }
    void Zamknij() { m_Stan = false; }
    //
    COLOR JakiKolor() { return m_Okladka; }
    bool OtwartaZamknieta() { return m_Stan; }
}

main.cpp:
C/C++
#include <iostream>
#include <conio.h>
#include <string>
#include "class.h"


int main()
{
    int iWybor;
    std::cout << "Masz przed sobą ksiazke. wpisz: " << std::endl;
    std::cout << "1. aby otworzyc ksiazke na wybranej stronie." << std::endl;
    std::cout << "2. aby zamknac ksiazke." << std::endl;
    std::cout << "3. aby sprawdzic kolor okladki." << std::endl;
    std::cout << "4. aby sprawdzic, na ktorej jestes stronie." << std::endl;
   
    getch();
}

Oczywiście to nie wszystko, brakuje implementacji metod klasy CBook, ale już na tym etapie Visual Studio przy kompilacji wyrzuca 2 błędy:

(wiersz 7 main.cpp) error C2628: 'CBook' followed by 'int' is illegal (did you forget a ';'?)
(wiersz 8 main.cpp)error C3874: return type of 'main' should be 'int' instead of 'CBook'

Nie za bardzo rozumiem przyczyny powstania tych błędów. Gdy z kody main.cpp wyrzucam #include "class.h" wszystko przebiega bezproblemowo. Co dziwne wprowadzenie pod #include "class.h" using namepsace std; powoduje kompletny misz-masz, dlatego te std:: w każdym wierszu.

Sam bym się zdenerował na kogoś, kto nie potrafi ładnie i zgrabnie umieścić kodu w poście, dlatego proszę o wyrozumiałość dla newbie :) Z góry dziękuje za każdą odpowiedź.
P-69722
SeaMonster131
» 2012-11-22 21:19:41
Postaw średnik po klasie:
C/C++
class CKlasa
{
}; // !
P-69730
« 1 »
  Strona 1 z 1