Forum I Roku Informatyki UW

Zadanie 3

Go down

Zadanie 3

Post by Marcin on Wed Nov 09, 2011 4:27 pm

Żeby nie było oburzenia, to najpierw zadam te pytania tu zamiast na oficjalnym forum:

- Czy mamy sprawdzać błędy (inne niż wyróżnione w treści zadania), czy zakładamy, że dane są poprawne?
Np. "złe" stringi, czy podany w argumencie obiekt (lub jego referencja) są dobrego typu, itp.

- Co z liczbami ujemnymi?
Można założyć, że ich nie będzie, czy mamy je sprawdzać jako błędy, czy też mamy wymyślić dla nich reprezentację?

Marcin

Liczba postów : 10
Join date : 2011-06-07

View user profile

Back to top Go down

Re: Zadanie 3

Post by Heniek on Wed Nov 09, 2011 7:14 pm

Przecież na labie Peczarski mówił, że wtedy program ma zrobić cokolwiek, choć dobrze żeby nie sformatował dysku.

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 3

Post by Marcin on Wed Nov 09, 2011 7:15 pm

Tylko to mówił do zadania nr 2.

Marcin

Liczba postów : 10
Join date : 2011-06-07

View user profile

Back to top Go down

Re: Zadanie 3

Post by Gricha on Wed Nov 09, 2011 11:32 pm

Ok. pytanie - czy coś trzeba zrobić dodatkowo chąc korzystać z dynamic bitseta?

/usr/include/boost/dynamic_bitset/dynamic_bitset.hpp:16:18: fatal error: string: No such file or directory
compilation terminated.

zarówno u mnie jak i na studentsie wiec wyglada jak problem boostowy..

//EDIT
Dobra k.. nvm. probowałem gcc kompilować
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 27
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 3

Post by k1391 on Thu Nov 10, 2011 7:57 pm

Mam problem z konwersją typów: kompilują mi się konstrukcje typu
Code:
Fibo f1;
bool ok  = (f1 == 4);
ale nie kompiluje się:
Code:
Fibo f1;
bool ok  = (4 == f1);
czy musze zdefiniować dodatkowe operatory dla inta (int.operator==(Fibo f1)), czy można to jakoś ładniej obejść?

k1391

Liczba postów : 108
Join date : 2010-11-17

View user profile

Back to top Go down

Re: Zadanie 3

Post by Gricha on Fri Nov 11, 2011 1:15 am

Mam problem którego nie mogę rozwiązać.. Może ktoś pomoże.

Otóż w pliku fibo.h w klasie Fibo mam (niech będzie publiczna) jakąś tam zmienną statyczną. Gdy w pliku fibo.cc odwołuje się do niej wywołaniem Fibo::zmienna dostaje undefined reference to fibo::zmienna
Czy ktoś wie czemu tak sie dzieje? Czy to jest problem z linkowaniem? Kompilowanie za pomocą g++ -c fibo.cc działa, ale bez -c już nie
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 27
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 3

Post by pawel14 on Fri Nov 11, 2011 1:51 am

Znalazłem coś takiego: LINK. Może tu jest problem.


Last edited by pawel14 on Fri Nov 11, 2011 11:27 am; edited 1 time in total

pawel14

Liczba postów : 118
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 3

Post by Gricha on Fri Nov 11, 2011 3:31 am

Tak - super - tu był problem - i jest o tym napisane nawet w czytankach Smile Mianowicie static member jest w klasie tylko deklaracją i musi być zdefiniowany w global scope Smile
avatar
Gricha

Liczba postów : 425
Join date : 2010-10-12
Age : 27
Skąd : Myszków

View user profile

Back to top Go down

Re: Zadanie 3

Post by Heniek on Fri Nov 11, 2011 9:55 pm

Czy mógłby ktoś wytłumaczyć mi dlaczego gdy zdefiniowałem konstruktor dla napisów oraz ustawiłem konstruktor dla bool jako prywatny to instrukcję typu Fibo f("111"); kompilator chce wykonać używając konstruktora dla bool

Heniek

Liczba postów : 329
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 3

Post by Maciek on Sat Nov 12, 2011 12:16 am

A po co tworzyłeś konstruktor dla bool?

Maciek

Liczba postów : 186
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 3

Post by Maciek on Sat Nov 12, 2011 12:21 am

k1391 wrote:Mam problem z konwersją typów: kompilują mi się konstrukcje typu
Code:
Fibo f1;
bool ok  = (f1 == 4);
ale nie kompiluje się:
Code:
Fibo f1;
bool ok  = (4 == f1);
czy musze zdefiniować dodatkowe operatory dla inta (int.operator==(Fibo f1)), czy można to jakoś ładniej obejść?
Możesz stworzyć globalną funkcję bool operator... (Fibo&, Fibo&); i nadać jej atrybut friend w klasie.

Maciek

Liczba postów : 186
Join date : 2010-10-12

View user profile

Back to top Go down

Re: Zadanie 3

Post by Sponsored content


Sponsored content


Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum