Rzutowanie, adnotacja węgierska i std::


#1

Mam kilka pytań co do tych poleceń.

  1. Czy rzutowanie jest jeszcze aktualne? W kursie "Od zera do gier kodera" są przykłady wymuszania typu zmiennych ale przykładowy program:

    int a=10;

    int b=a*0,333;

U mnie kompiluje się bez przeszkód, b wtedy wynosi 3.

  1. Czy używa ktoś adnotacji węgierskiej przy zmiennych? Czy warto się tego uczyć ?

  2. Jak wyżej, czy używa ktoś std:: ? Jest jakiś głębszy sens jego zastosowania?


(Fiołek) #2
  1. Ten kod co podałeś nie rzutuje tylko mnoży a przez 333(poczytaj o operatorze ,, separator dziesiętny w C++ to .) :wink:

Rzutowania niejawne są w C++ "nadal aktualne", bo czemu miałyby nie być? C++1x chyba też tego nie zmienia.

  1. Nie używam, gdyż każde znośne IDE po najechaniu myszką na zmienną wyświetla nam jej typ. W językach dynamicznie typowanych to może ma sens, ale nie w C++.

  2. Używam, czemu miałbym nie używać? O wiele ułatwia pracę, jeśli kod jest sensownie podzielony na namespace'y.


#3

W tym 1 myślałem że przed standardami mogło wywalać jakiś błąd co do int i dziesiętnych.

Ok, dzięki za odpowiedz


(somekind) #4

Nikt nie używa, bo coś takiego nie istnieje.

Sugeruję najpierw wziąć SJP do ręki, dowiedzieć się, co to jest adnotacja.

Natomiast korzystanie z notacji węgierskiej ma sporo wad - niepotrzebne zaciemnienie kodu, konieczność zmiany nazw zmiennych wraz ze zmianą typu, i żadnej zalety.