Reprezentacja grupowa oraz klasy ze zmienną strukturą obiektów

0

Witam !

Moje zapytanie dotyczy dwóch powyższych pojęć. Oczywiście, wcześniej poszukałem w internecie jakichkolwiek materiałów na ten temat, ale szczerze mówiąc, te pojęcia są traktowane trochę po macoszemu. Właściwie wiem tylko, że klasy ze zmienną strukturą to takie, które zawierają wskazanie na jakies inne obiekty czy zasoby oraz powinny zawierać definicję konstruktorów: domyślnego oraz kopiującego, operatora przypisania, ewentualnie konstruktora przesuwającego (c++11) oraz destruktora. No w sumie wszystko jasne, ale... w swoim projekcie muszę zrobić kilka takich klas powiązanych znaczeniowo z różnym układem pól. Czy ten "różny układ pól " to po prostu mają być różne dane klasy o różnych typach, w różnej kolejności ?

Co do reprezentacji grupowej... To te pojęcie w ogóle jest ignorowane. Znalazłem informacje, że to coś takiego, że klasa przechowuje jedynie "uchwyt" do obiektu-reprezentacji, która realizuje większość kluczowych operacji.

Więc prosiłbym o bardziej dokładne wytłumaczenie tych pojęć, wskazanie przykładów lub po prostu podanie linka do materiałów które mi pomogą, a które mogłem przegapić.

Z góry dziękuje za pomoc.

1
Sarnapa napisał(a):

Witam !

Moje zapytanie dotyczy dwóch powyższych pojęć. Oczywiście, wcześniej poszukałem w internecie jakichkolwiek materiałów na ten temat, ale szczerze mówiąc, te pojęcia są traktowane trochę po macoszemu. Właściwie wiem tylko, że klasy ze zmienną strukturą to takie, które zawierają wskazanie na jakies inne obiekty czy zasoby oraz powinny zawierać definicję konstruktorów: domyślnego oraz kopiującego, operatora przypisania, ewentualnie konstruktora przesuwającego (c++11) oraz destruktora. No w sumie wszystko jasne, ale... w swoim projekcie muszę zrobić kilka takich klas powiązanych znaczeniowo z różnym układem pól. Czy ten "różny układ pól " to po prostu mają być różne dane klasy o różnych typach, w różnej kolejności ?

Co do reprezentacji grupowej... To te pojęcie w ogóle jest ignorowane. Znalazłem informacje, że to coś takiego, że klasa przechowuje jedynie "uchwyt" do obiektu-reprezentacji, która realizuje większość kluczowych operacji.

Więc prosiłbym o bardziej dokładne wytłumaczenie tych pojęć, wskazanie przykładów lub po prostu podanie linka do materiałów które mi pomogą, a które mogłem przegapić.

Z góry dziękuje za pomoc.

Pierwszy raz słyszę takie tłumaczenia na pimpl. Po pierwsze nie trzeba stosować rule of three/five, bo można użyć rule of zero. Poza tym kolejność deklaracji pól w klasie ma co najwyżej znaczenie w konstruktorze listy inicjalizacyjnej. Ogólnie szukaj informacji pod hasłami: pimpl idiom, rule of three/five/zero.

0

Przepraszam, że tak późno, ale dziękuje za wskazanie tych pojęć :) .

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