Meuh si, ça poutre le C++
Et puis types builtin sux

(parce que sinon, tu seras bien content avec ton C++ qui a des chaînes de caractères, mais après faudra penser à avoir un C++++ avec des tableaux qui peuvent grandir, un C++++++ avec des tableaux associatifs, etc...) Notamment le fait qu'en Java, les entiers/chaînes/tableaux aient droit à un traitement de faveur que n'ont pas les autres structures de données (par exemple les tableaux associatifs), ça devient vite lourd...
En fait le pb du C++, c'est surtout qu'il était conçu pour être quasi-totalement compatible avec le C, et qu'on peut faire plein de trucs crades en C... Donc pour avoir un truc potable, le C++ a dû devenir super lourd. Mais je ne vois pas trop ce qu'on pourrait reprocher au C# (qui reprend pas mal de côtés sympas du C++, notamment que les chaînes n'ont pas de statut particulier), à part que c'est un peu moins efficace à cause de la garbage-collection... (mais qui peut être contournée si on y tient)