Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Trochę pytań o c++


pypciaR

Rekomendowane odpowiedzi

Opublikowano

Trochę mi się ich zbiera :D i szukam na nie odpowiedzi :P

 

Zaczynając od początku choć najbardziej mnie narazie intryguje ostatnie :D.

 

1. Czym się różni "auto" od "template" jak narazie nie zauważyłem różnicy, ponieważ to i to pozwala mi nie definiować typu danych ( auto wygląda na lepsze na pierwszy rzut oka, bo już mogę taki parametr przekazać).

2. Czy w programowaniu ( zawodowym ) stosuje się jeszcze normalne typy danych tj. int, float itd? (w jakiejś "mądrej" książce wyczytałem, że niby lepiej auto stosować, oprócz tam szczególnych przykładów np. z vectorem i bool )

3. Dochodzę do sedna :D nie rozumiem pewnego zapisu

std::vector<int> f1(const Class& c); // To jest utworzenie funkcji która zwraca vector jak mniemam ? Czy vector mający w sobie funkcję  (trochę dziwny zapis w książce :>)

Class c;
int hp = f1(c)[5];       // tutaj podobno odwołuje się do 5 bitu tego obiektu? Skąd mam np. wiedzieć, że dana jest akurat na 5 bicie tego obiektu?


f2(c, hp);

Jeśli przypomnę sobie jakieś jeszcze pytania to może zaktualizuje :P

pl ;)

Opublikowano

1. auto specifier i template. Krótko: auto mówi kompilatorowi by "domyślił" się typu zmiennej a template to szablon, na podstawie którego tworzysz nowe typy.

2. Tak, stosuje się. Nadużywanie auto wcale nie jest dobre i może spowodować, że kod stanie się mało czytelny.

3.1. Funkcja.

3.2. Reverse Engineering/zapytać tego kogoś kto te funkcję zrobił/poczytać dokumentacje.

YOU MUST DIE

- Ganon, Koridai

Opublikowano

1. Czyli jeśli chodzi o auto i template to w funkcji np. dodawania to nie robi różnicy czy użyję auto czy template ( żeby można było raz wsadzić double a raz int lub coś innego ).

 

3.2 Jeśli chodzi o tą funkcję to jest ona z książki :P pisze w niej że to wskazanie na 5 bit, ale ciekawiłem się, jak można się dowiedzieć, że dana wartość jest akurat na danym bicie.

pl ;)

Opublikowano

1. Czyli jeśli chodzi o auto i template to w funkcji np. dodawania to nie robi różnicy czy użyję auto czy template ( żeby można było raz wsadzić double a raz int lub coś innego ).

 

3.2 Jeśli chodzi o tą funkcję to jest ona z książki :P pisze w niej że to wskazanie na 5 bit, ale ciekawiłem się, jak można się dowiedzieć, że dana wartość jest akurat na danym bicie.

std::vector<int> f1(const Class& c);

 

to jest tylko zainicjowanie tej funkcji. chodzi o to, że ta funkcja jest gdzieś dalej 'rozwinięta', a powyższa linijka tylko mówi kompilatorowi w momencie kompilacji, że taka funkcja istnieje.

 

int hp = f1©[5];

wiesz, że funkcja zwraca kontener (vector), którego elementy są typu int. powyższa linijka zapisuje do zmiennej hp szóstą wartość z tego kontenera.


 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...