C++ благодаря встроенному аппарату классов допускает "самораскрутку" - программист может определять как угодно сложные объекты языка и операции над ними. Поэтому для С++ созданы огромные библиотеки таких объектов. Например, модель космического корабля может быть одним объектом языка, а операцию + можно для таких объектов определить как стыковку
Чаще, впрочем, в состав объекта входят функции для работы с ним. А чисто для программирования используется такие готовые сложные объекты, как браузер или текстовый редактор. Но и для простых объектов это очень полезно, строки, например, С++ с помощью одной из готовых библиотек определяет как объекты с множеством функций, которые можно самому наращивать (хотя в основе лежат обычные строки C, только их возможности очень сильно "наращены").
к С добавлены возможности объектно-ориентированного программирования (полиморфизм, наследование... ) это усилило язык и получился С++
но в С++ ты можешь программировать как на обычном С (не используя объектно-ориентированные навороты)...
++ вот в чём