По поводу "устаревшего" С++

Непонятно только, почему невозможно написать столь же неразборчивый текст программы на Java. ;-)

Forums: 

Изображение пользователя st.

Это текст из примеров, которые

Это текст из примеров, которые показывают "как надо" :)
Загляните в любой более-менее сложный фреймворк: MFC, ATL. Точнее, в примеры его использования.
Код, который нужно там писать состоит в основном из макросов и многоэтажных конструкций SetЧертЗнаетЧто(ХренЗнаетОткудаВзявшийсяУказатель).

Этот код написан неправильно,

Этот код написан неправильно, т.к. надо было проверить размер принимающего буфера, а не писать какой-то бред в стиле "SIZEOF_MEMBER(CTABLESRow, m_szTable)".

lstrcpynW(trData.m_szTable, CT2WEX(szDir), SIZEOF_MEMBER(CTABLESRow, m_szTable));

Да и вообще, если нравятся объекты-строки, можно написать так:

trData.m_sTable = szDir;

В чем тут вообще отличие от Java? Мне нравится C++ тем, что можно использовать OO-подход, а можно, при необходимости, спуститься на самый нижний уровень. Но только при необходимости. В случае такой необходимости в Java или C# с большой долей вероятности придется скатиться к ненавистному C++ и написать отдельный модуль, а это показывает оборотную сторону медали "безопасный код". И важность приемлемой скорости работы программы еще никто никогда не отменял. Из того, что я видел, написанного на Java или C#, все работало, мягко говоря, "неспеша".