Tablica wskaźników , która wskazuje na obiekty klasy zagnieżdżonej.

0

Witajcie mam problem, mam do zrobienia 2 klasy i jedna ma być zagnieżdżona tak jak tutaj :

class Gatunek
{
private:
    string Nazwa;
    Gatunek ** tablica;
    class Film
    {
    private:
        string Gatunek;
        string Tytul;
        int Rok;
        Film ** wsk;
        
    public:
        Film() { }
        
    };
    
public:
    void get() {; }
    
    
    
};
 

Muszę zrobić tak aby tablica wskaźników która jest zadeklarowana w private w klasie Gatunek wskazywała na obiekty klasy Film , która jest zagnieżdżona w polu private. Próbowałem coś zrobić i szukałem w internecie ale nic pomocnego nie znalazłem. Proszę was o pomoc.

1
class Gatunek
  {
   private:
   class Film
     {
      private:
      string Tytul;
      int Rok;
      public:
      //Film() { ... }
    };
   string Nazwa;
   size_t rozmiarTablicy;
   Film **tablica;
   public:
   //Gatunek() { ... }
  };

z tym że jest to mało sensowny pomysł ponieważ bardzo często film należy do kilku gatunków naraz.

0

No dobrze a gdyby było to na odwrót , chodzi mi jak to zrobić ?
Dokładnie mam takie zadanie :

Zdefiniować klasę, zawierającą w polu prywatnym, tablice wskaźników na obiekt innej klasy
które jest zdefiniowana w polu prywatnym jako klasa zagnieżdżona

0

Że zamienię klasę główną na Film a zagnieżdżoną na Gatunek

0

W zadaniu masz tak jak pokazałem, czytanie ze zrozumieniem się kłania.
Na odwrót też nie problem zrobić lecz jest to całkowicie bez sensu z punktu widzenia zdrowego rozsądku oczywiście.

0

Powiedz mi jeszcze jedną rzecz , zrobiłem tak jak pokazałeś , potem robię funkcję add w pliku main.cpp i odwołuje się do tej tablicy : tablica[i]-> i nie mam dostępu do składowych Gatunku. zobacz :

 
#include "Header.h"

void main()
{
	Film nowyfilm;

}
void Film::add()
{
	int i = 5;
	tablica = new Gatunek*[i];
	tablica[i] = new Gatunek;
	tablica[i]->
}
0
void Gatunek::add(const string &Tytul,int Rok)
0

Ale dalej jest to samo gdy próbuje dostać się do tablicy wskaźników gdy robię tablica[i]-> tu powinna być Nazwa a nic się nie wyświetla.

0

Film nie ma nazwy, tylko Tytul i Rok.
Weź przeczytaj jakiś kurs, bo błądzisz po ciemku.

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