ภาษาโปรแกรม C++ มีประวัติย้อนกลับไปถึงปี 1979 เมื่อ Bjarne Stroustrup ทำงานสำหรับ Ph.D. thesis เขาเริ่มงาน "C with Classes" ซึ่งเป็น superset ของ C เป้าหมายคือเพิ่ม object-oriented programming ลงใน C ซึ่งเป็นภาษาที่ได้รับการเคารพเพราะ portability โดยไม่เสีย speed หรือ low-level functionality
ภาษาของเขามี classes, basic inheritance, inlining, default function arguments, และ strong type checking เพิ่มจากฟีเจอร์ C ทั้งหมด คอมไพเลอร์ C with Classes แรกชื่อ Cfront มาจาก C compiler ชื่อ CPre โปรแกรมแปลง C with Classes code เป็น C ธรรมดา
ปี 1983 เปลี่ยนชื่อจาก C with Classes เป็น C++ ตัวดำเนินการ ++ ใน C คือ increment variable ให้เห็นมุมมองของ Stroustrup หลายฟีเจอร์ใหม่เพิ่มเข้ามา เช่น virtual functions, function overloading, references ด้วย &, const keyword, และ single-line comments ด้วย //
ปี 1985 C++ ออกเป็น commercial product ยังไม่ standardized ปี 1989 อัปเดตเพิ่ม protected และ static members และ multiple inheritance
ปี 1990 Turbo C++ ออกเป็น commercial product เพิ่ม libraries มากมาย ส่งผลต่อการพัฒนา C++
ปี 1998 มาตรฐานสากลแรก ISO/IEC 14882:1998 (C++98) รวม Standard Template Library ที่เริ่มพัฒนาตั้งแต่ 1979 ปี 2003 ปรับแก้ปัญหาจาก 1998 เป็น C++03
กลาง 2011 มาตรฐานใหม่ C++11 เสร็จ ฟีเจอร์ใหม่: Regex support, randomization library, time library, atomics, threading library, range-based for loop, auto keyword, new containers, unions/array-initialization lists 改善, variadic templates