Гибридный: содержит как предельно низкоуровневые (унаследованные от С), так и предельно высокоуровневые (ООП, auto и т. д.) механизмы. И то, что С++ целиком построен (как и его прородитель) на низкоуровневой адресной арифметике, не позволяет отнести его к действительно высокоуровневым языкам.