Prosta klasa i działania na obiekcie
Ostatnio zmodyfikowano 2012-11-22 21:19
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: 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: #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ź. |
|
SeaMonster131 |
» 2012-11-22 21:19:41 Postaw średnik po klasie: |
|
« 1 » |