• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Klasa i lista jednokierunkowa

Object Storage Arubacloud
0 głosów
188 wizyt
pytanie zadane 21 stycznia 2018 w C i C++ przez koot Nowicjusz (120 p.)

Cześć! Mam do zrobienia coś takiego (najpewniej będzie, gdy zacytuję polecenie, bo właśnie w tym mój problem, że nie do końca wiem, jak to ma wyglądać)

"Zaimplementuj klasę Poly implementującą wielomian rzadki w postaci listy jednokierunkowej przechowującej struktury struct Term { int n; int a }, gdzie n - stopniem wyrazu wielomianu, a - jego współczynnikiem. W klasie Poly zaimplementuj następujące operacje (dwie funkcje i trzy operatory)", m.in. operator <<(ostream os, const Poly &p który wypisze wielomian p.

Przygotowałem taki szkielet. Czy jest on poprawny? I drugie pytanie, jak się uporać z takim operatorem, o którym pisałem wyżej?

 

class Poly
{
	struct Term
	{
		int a,n;
		Term *next;
	};
	
	Term* head;
	Term* tail;
	
	public:
		void add(const Poly &p);
		void compress();
		
	Poly operator () (double x) { ;}
		
	Poly operator << (ostream os, const Poly &p) { ;}
		
	Poly operator [] (int n){return  ;}
};



void Poly::add(const Poly &p)
{	
	
}

void Poly::compress()
{
	
}

 

1 odpowiedź

0 głosów
odpowiedź 22 stycznia 2018 przez j23 Mędrzec (194,920 p.)
edycja 22 stycznia 2018 przez j23

Strukturę Term masz jasno zdefiniowaną, IMO to powinno wyglądać tak:

class Poly
{
    struct Term
    {
        int a,n;
    };

    struct node
    {
        Term term;
        node * next;
    };

    node* head;
    node* tail;
    ...

Poly operator << (ostream os, const Poly &p) { ;}

Operator powinien zwracać przez referencję obiekt os, który powinieneś przekazywać w parametrze także przez referencję. Nie powinien być metodą klasy - wywal definicję tego operatora z definicji klasy. Ewentualnie zostaw jedynie deklarację zaprzyjaźniającą.

    Poly operator () (double x) { ;}

    Poly operator [] (int n){return  ;}

Co te operatory mają niby zwracać/robić?

Podobne pytania

0 głosów
1 odpowiedź 196 wizyt
0 głosów
2 odpowiedzi 466 wizyt
pytanie zadane 7 maja 2017 w C i C++ przez krzakurts Obywatel (1,470 p.)
0 głosów
1 odpowiedź 530 wizyt
pytanie zadane 6 listopada 2016 w C i C++ przez Łukasz ER Początkujący (420 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...