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

0

Mam poprawić poniższy kod:

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

 virtual void B() = 0;

-> void B();


 i wszystko jest OK, ale nie wiem czy o to tutaj chodziło?
0

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

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...

0

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

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ć.

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ć.

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.

0

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

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.

0

Ok, dziękuję.

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