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

Szablony czy tak mozna?

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
708 wizyt
pytanie zadane 8 października 2018 w C i C++ przez Poczprogramista123 Bywalec (2,900 p.)

Poprostu czy tak mozna.Chyba nie bo jak wywolam szablon dla inta to takie cos jest nieporzadane. Dodam ze pierwszy raz mam stycznosc z szablonami wiec niewiem ale to jak ma w takim razie  wygladac praca na obiektach w takiej funkcji.


template <typename T>
bool Sprawdz(T &Postac)

{

if(Postac.czy_prawda)
return true;

}

 

komentarz 8 października 2018 przez Hiskiel Pasjonat (22,830 p.)
Jaki jest sens tego kodu?
komentarz 8 października 2018 przez Poczprogramista123 Bywalec (2,900 p.)
edycja 8 października 2018 przez Poczprogramista123
Jezu chodzi o istote ale jak ci taj zalezy. Chce zrobic szablon ktory bd sprawdzal czy obiekt (wszelaki Postac,Przeszkoda) Jest widoczny w oknie. Kazdy taki obiekt ma swoja pozycje.

1 odpowiedź

0 głosów
odpowiedź 8 października 2018 przez adrian17 Mentor (354,120 p.)
wybrane 8 października 2018 przez draghan
 
Najlepsza

Chyba nie bo jak wywolam szablon dla inta to takie cos jest nieporzadane

To proste - jeśli obiekt typu T ma pole `czy_prawda`, to szablon się skompiluje. Jeśli nie ma go (np T to int), to nie zadziała.

(inna sprawa, że ta funkcja nie zwraca wartości na każdej ścieżce. No i czy ogólnie ma sens :) )

1
komentarz 8 października 2018 przez adrian17 Mentor (354,120 p.)
Lista w znaczącej większości zastosowań jest wolniejsza.

Krótki wykład twórcy C++a: https://www.youtube.com/watch?v=YQs6IC-vgmo
komentarz 8 października 2018 przez Poczprogramista123 Bywalec (2,900 p.)
Wow no prosze. Dzieki
komentarz 9 października 2018 przez Poczprogramista123 Bywalec (2,900 p.)

@adrian17, Wyczytalem ze lista ma szybkie dodawanie ale wolny odczyt a vector przeciwnie. Przeciez przy wektorze jak dodajemy czy usuwamy element to musimy przekopiowac cala tablice.

komentarz 9 października 2018 przez mokrowski Mędrzec (158,660 p.)
komentarz 9 października 2018 przez adrian17 Mentor (354,120 p.)

Wyczytalem ze lista ma szybkie dodawanie ale wolny odczyt a vector przeciwnie

Tylko dodawanie na początku/końcu - w środku, trzeba najpierw tam przeiterować, co jest wolne. Do tego zajmuje więcej pamięci.

Przeciez przy wektorze jak dodajemy czy usuwamy element to musimy przekopiowac cala tablice.

Tylko przy dodawaniu/usuwaniu w środku lub na początku; na końcu, dodawanie jest dość tanie.

Podobne pytania

0 głosów
4 odpowiedzi 2,344 wizyt
pytanie zadane 4 września 2015 w C i C++ przez xR Mądrala (6,260 p.)
0 głosów
2 odpowiedzi 629 wizyt
0 głosów
1 odpowiedź 781 wizyt

93,440 zapytań

142,431 odpowiedzi

322,679 komentarzy

62,802 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

...