Néhány élmény:
- Rettenetes reference-k után pointerekkel dolgozni. Nem annyira a garbage collector hiánya miatt, hanem mert állandóan azon kell gondolkodni, hogy amit most nézek az az objektum vagy egy pointer az objektumra. Ezzel kapcsolatban volt egy java.net-es poll.
- A GCC hibaüzenetei gyakran elég félrevezetőek.
- A namespace-k használata a java packagek után, hát nem túl barátságos.
- Az IDE support jelképes. A Kdevelop szép, de a syntax highlighting-on kívül nem sokat tud adni a forráskód szerkesztéséhez, azt meg a VIM úgyis jobban tudja :-) Az eclipse C++ pluginja ezen a téren valamivel jobb, de sehol sincs a java pluginhoz képest.
Végül visszatértem a régi jó vim + bash + make környezethez, az legaláb stabil. - Azzal sikerült megtréfálni, hogy nem dob ArrayOutOfBoundsExceptiont-t amikor túlcímezek egy tömböt :), sőt végre is hajtja, csak valamivel később dob egy hátast. Persze nem kell túlcímezni, meg ő honnan is tudná hogy túl lett címezve, de azért az nem mókás, amikor az ember keresi hogy vajon eddig hol túrhattott el valamit a memóriában.
- A fordítási direktívák kivállóan alkalmasak az olvasó megtvesztésére :) remélem ilyen nem lesz soha java-ban.
- Végülis én azért tértem át régen C++-ról java-ra, mert tetszett az, hogy mindenhez van szabványos API. JDBC, servlet, swing gui, ilyesmi...
- A makefileok még egyszerűek, azt mindig is szerettem, de a gnu automake, autoconf, auto.* + m4 makrók káosza nálam mindig lerúgja a szíjjat. Ant, maven, és bármilyen java-ra írt build eszköz ehhez képest havaj.