Jak poprawić kod, aby kompilował się poprawnie?

Jak poprawić kod, aby kompilował się poprawnie?
BT
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 102
0

Mam poprawić poniższy kod:

Kopiuj
class A {
public: 
	A() {}
protected: 
	virtual void B() = 0;
};
class B 
	: public A 
{
public: 
	B(A y) { x = y; }
private: 
	A x;
}; 

napisałem zamiast

Kopiuj
 virtual void B() = 0;

-> void B();

Kopiuj
 i wszystko jest OK, ale nie wiem czy o to tutaj chodziło?
FI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6
0

Prześlij cały kod programu a nie tylko urywek.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

A skad my mamy wiedzieć? Można to zrobić na 1000 sposobów przecież. Można równie dobrze dopisać ciało tej metody czyli dać {} zamiast =0. Można zmienić w klasie B obiekt x na wskaźnik do A...

fasadin
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4883
0

mozna tez zrobic refactoring skasowac to wszystko i powiedziec ze bylo niepotrzebne.

BT
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 102
0

To jest cały kod. Mam po prostu poprawić go, aby się skompilował.
Więc wydaję mi się, że tak jak zrobiłem może być.

FI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6
0
btanreb napisał(a):

To jest cały kod. Mam po prostu poprawić go, aby się skompilował.
Więc wydaję mi się, że tak jak zrobiłem może być.

Kopiuj
class A {
public:
    A() {}
protected:
    void B();
};
class B
    : public A
{
public:
    B(A y) { x = y; }
private:
    A x;
};

Sugerujesz, że masz kod w tej postaci i program ci się kompiluje ? - bo u mnie wyskakuje 1 error.

BT
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 102
0

Tak, pomijając wczytanie biblioteki i napisanie funkcji main.

FI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6
1

Ok, działa, nie zauważyłem, braku średnika przepraszam.
Kod jest OK. Tak jak mówili Panowie wyżej, można to zrobić na kilka innych sposobów, ale ten też jest poprawny.

BT
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 102
0

Ok, dziękuję.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.