Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:dydaktyka:jimp2:2016:part2:ex:ex1 [2016/04/21 08:22]
msl [Oddawanie ćwiczenia]
pl:dydaktyka:jimp2:2016:part2:ex:ex1 [2019/06/27 15:50]
Linia 1: Linia 1:
-====== Ćwiczenie 1: Szablony funkcji ====== 
  
-===== Po co ===== 
-  * Doskonalenie umiejętności przeładowywania operatorów. 
-  * Poznanie sposobu interpretacji szablonu. 
-  * Zapoznanie się z mechanizmem działania szablonów. 
-  * Definiowanie szablonów funkcji. 
-  * Definiowanie funkcji specjalizowanych. ​   
-  * Umiejętność zastosowania szablonów funkcji dla typów wbudowanych,​ jak również typów definiowanych przez użytkownika. 
- 
-===== Oddawanie ćwiczenia ===== 
-  * Przed oddaniem ćwiczenia, program należy przetestować używając następującego pliku main w paczce: {{:​pl:​dydaktyka:​jimp2:​2016:​part2:​ex:​ex1main.tar.gz|}} 
-  * Powyższy plik wymaga istnienia pliku ''​aghInclude.h''​ poprzez który włączane są wszystkie niezbędne pliki. 
- 
-===== Wykonanie ćwiczenia ===== 
-  - Definiujemy szablon funkcji **''​suma''​**,​ która przyjmuje **''​dwa''​** argumenty: 
-    * Argument typu **parametrycznego**,​ który umożliwia odniesienie się do składników sumy. 
-    * Długość tablicy (ew. ilość składników sumy) jako wartość typu **''​int''​**. 
-  - Jako typ zwracany funkcji, przyjmujemy typ **''​double''​**. 
-  - Prawidłowo zdefiniowany szablon funkcji **''​suma''​** powinien wyświetlić na ekranie: 
-    *  poszczególne składniki sumy oraz, 
-    *  wynik w formacie np.: ''​s1 + s2 + s3 = wynik''​ 
-  - Definiujemy **funkcję specjalizowaną** dla typu **''​char* *''​** w taki sposób aby sklejała kolejne elementy tablicy w jeden ciąg. Podobnie jak w przypadku szablonu funkcji, funkcja specjalizowana powinna wyświetlić:​ 
-    * wszystkie poszczególne składniki (tutaj wyrazy), 
-    * sklejony ciąg, oraz 
-    * jego długość. To wszystko w formacie np.: ''​abc+ghi+xyz=abcghixyz(9)''​. 
-  - Jako **rezultat** funkcja zwraca **długość** sklejonego ciągu. 
-  - Definiujemy klasę **''​aghFib''​** która oblicza **wartość wskazanego wyrazu** ciągu Fibonacciego. Klasa musi być tak zdefiniowana aby obiekt tej klasy mógł być użyty jako **argument funkcji szablonowej!** tzn. nie definiujemy funkcji specjalizowanej dla tego typu. 
-  - Program powinien się poprawnie kompilować i uruchomić wraz z dostarczonym plikiem {{:​pl:​dydaktyka:​jimp2:​cpp:​ex:​ex1main.cpp|}}. 
pl/dydaktyka/jimp2/2016/part2/ex/ex1.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0