Ласло Краус |
ИР2ОО1/СИ2ОО1 Испит 4. 2. 2011. |
---|
Одговорити концизно (једна или две реченице) и прецизно на следећа питaња:
а) Ког је типа и шта садржи резултат оператора new
?
б) Да ли се у методи класе X
, која је пријатељска метода класe Y
, може директним именовањем приступати заштићеним и приватним члановима класе Y
? Зашто?
в) Да ли се аутоматско генерисање функције из шаблона врши при позивању дате функције у време извршења или при првом наиласку на позив дате функције у време превођења? Зашто?
Написати на језику C++ следеће класе (класе опремити оним конструкторима, деструктором и оператором за доделу вредности, који су потребни за безбедно коришћење класа; грешке пријављивати изузецима типа једноставних класа које су опремљене писањем текста поруке):
T
који се може копирати методом kopija()
. Ствара се празан, почетног статички задатог капацитета N
који се по потреби повећава за по N
места. Може да се дохвати број ствари у низу, да се низу додаје ствар (niz+=&stvar
) и да се приступи ствари са затим редним бројем (niz[ind]
; грешка је ако је индекс изван опсега).
(15 поена)
Порука садржи тело, адресу пошиљаоца и адресу примаоца (ниске знакова) који могу да се дохвате. Може да се направи динамичка копија поруке и да се порука упише у излазни ток (it<<poruka
) у облику [
пошиљалац|
прималац]
тело.
sanduce+=&poruka
).
grupa+=&ucesnik
). Копија примљене поруке се доставља свим члановима групе. Грешка је ако групa покуша да шаље поруку.
imenik+=&ucesnik
) и да се дохвати учесник задате адресе (imenik[adresa]; грешка је ако се учесник не пронађе у именику).
(10 поена) Написати на језику C++ програм који формира један именик, једну групу учесника са два саговорника и трећег саговорника који пошаље једну поруку групи и једну поруку учеснику који не постоји у именику. Користити фиксне параметре (не треба ништа учитавати с главног улаза).
Copyright © 2011, Laslo Kraus
Последња ревизија: 29.8.2011.