A Java nyelv rengeteg agyahalottsága közül az egyik szívszerelmem, hogy nincsenek C-stílusú enumok, vagyis ha van egy láda konstansod, akkor számozhatod őket egyenként. Ez akkor különösen nagy élmény, amikor C-s kóddal közösen kell közlekedni a gépen, és a C-s header persze szépen teli van akkurátusan definiált enumos konstansokkal, amit persze neked is használnod kéne. Tehát a konstansokat egyenként át kell írni Java-ba, és megszámozni. Hurrá. Persze, ha ezt megspékeljük egy programozóval, amelyik ledefiniálja a végtelent konstansként, akkor egészen vicces dolgok is születhetnek eredményül. Például ilyenek:
Az eredeti C verzió:
enum FooBarMode
{
FOO_GEEK,
FOO_NERD,
FOO_LAMER,
FOO_EXPERT,
...
Ugyanez Java-ban, szerinte:
// enum FooBarMode
public static final int FOO_GEEK = 0;
public static final int FOO_NERD = 2;
public static final int FOO_LAMER = 3;
public static final int FOO_EXPERT = 4;
...
Aszzem erre mondják, hogy kettőig sem tud számolni. És amilyen meglepő és mulatságos bugokat ez tud okozni... De arról majd máskor. :)
- Chain-Q blogja
- A hozzászóláshoz be kell jelentkezni
Hozzászólások
Naaa, azert a java 5 ota van mar enum. Addig telleg csak a konstansos bohockodas volt.
- A hozzászóláshoz be kell jelentkezni
A Java 5 olyan luxus, amit egy mobilprogramozó egyelőre nem engedhet meg magának...
-=- Mire a programozó: "Na és szerintetek ki csinálta a káoszt?" -=-
- A hozzászóláshoz be kell jelentkezni
Jó a srác! :)
- A hozzászóláshoz be kell jelentkezni
:) Volt közte valami, amit kivett?
- A hozzászóláshoz be kell jelentkezni
Jobb helyeken ismerik a komment jelet.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Hat, nem jo ha egy nerd-bol lamer lesz ez teny es valo.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni