تاریخچه زبان سی پلاس پلاس
از آنجا که در سی++ اشیاء را میتوان ابتدا به ساکن از کلاسهایی ایجاد کرد که به هیچگونه سلسله مراتب ردهها و وراثت مقید نیستند، لذا سی++ از برنامهسازی شیء بنیاد (object-based programming) نیز پشتیبانی میکند. ++C به همراه جد خود C از پرطرفدارترین زبانهای برنامهنویسی تجاری هستند.
++C یک زبان سطح میانی در نظر گرفته میشود؛ این زبان دارای قابلیت زبانهای سطح بالا و پایین بهصورت همزمان است.
++C توسط بییارنه استراستروپ ریاضیدان دانمارکی در سال ۱۹۷۹ در آزمایشگاههای بل (Bell Labs)، برای بهبود زبان سی و بر مبنای آن ساخته شد و آن را «C با کلاس» (C With Classes) نامگذاری نمود. در سال ۱۹۸۳ به ++C تغییر نام داد. توسعه با اضافه نمودن کلاسها و ویژگیهای دیگری مانند توابع مجازی، سربارگزاری عملگرها، وراثت چندگانه، قالب توابع، و پردازش استثناء انجام شد. این زبان برنامهنویسی در سال ۱۹۹۸ تحت نام ISO/IEC ۱۴۸۸۲:۱۹۹۸ استاندارد شد. نسخهٔ فعلی استاندارد این زبان ISO/IEC ۱۴۸۸۲:۲۰۱۴ است.
تاریخچه زبان
استراستروپ کار بر روی زبان «C با کلاس» را در سال ۱۹۷۹ آغاز کرد. ایدهٔ ساخت این زبان جدید در زمان کار بر روی تز دکترای خود به ذهن استراستروپ خطور نمود. او متوجه شد که سیمولا دارای ویژگیهایی مناسب برای ساخت برنامههای بسیار بزرگ است اما برای استفادهٔ عملی بسیار کند است اما بیسیپیال با وجود سرعت بسیار زیاد برای ساخت برنامههای بزرگ بسیار سطح پایین است. زمانی که استراستروپ کار خود را در آزمایشگاههای بل (Bell Labs) آغاز نمود با مشکل تحلیل هسته یونیکس با توجه به محاسبات توزیع شده روبرو شده بود. با یادآوری تجربیات خود در دوران دکترا، او زبان C را با استفاده از ویژگیهای سیمولا گسترش داد. C به این دلیل انتخاب شد که یک زبان عمومی، سریع، قابل حمل، و در سطح گستردهای در حال استفاده بود. علاوه بر C و سیمولا زبانهای دیگری مانند ALGOL ۶۸، ADA, CLU, ML نیز بر ساختار این زبان جدید اثر گذاشت. در ابتدا ویژگیهای کلاس، کلاسهای مشتق شده، کنترل نوع قوی، توابع درونخطی و آرگومانهای پیشفرض از طریق Cfront به C اضافه شد. اولین نسخهٔ تجاری در سال ۱۹۸۵ ارائه شد.
در سال ۱۹۸۳ نام زبان از «C با کلاس» به ++C تغییر یافت. ویژگیهای دیگر شامل توابع مجازی، سربارگزاری عملگر و نام تابع، ارجاعات، ثوابت، کنترل حافظه توسط کاربر بهصورت آزاد، کنترل نوع بهتر، و توضیحات یکخطی به صورت BCPL با استفاده از «//» نیز به آن اضافه شد. در سال ۱۹۸۵ اولین نسخه زبان برنامهنویسی ++C انتشار یافت و مرجع مهمی برای این زبان فراهم شد در حالی که هیچ استاندارد رسمیای وجود نداشت. در سال ۱۹۸۹ ویرایش ۲٫۰ از زبان ++C ارائه شد. ویژگیهای جدیدی مانند ارثبری چندگانه، کلاسهای انتزاعی، اعضای ایستای توایع، اعضای ثابت تابع، و اعضای حفاظت شده به آن اضافه شد. در سال ۱۹۹۰ «راهنمای مرجع ++C» منتشر شد. این کار بنیان استانداردهای بعدی شد. آخرین ویژگیهای اضافه شده شامل موارد زیر بودند: قالب توابع، استثناها، فضاهای نام، تبدیلات جدید، و یک نوع داده منطقی.
در حین تکامل ++C کتابخانهٔ استاندارد نیز بهوجود آمد. اولین نسخهٔ کتاب استاندارد شامل کتابخانهٔ جریانات I/O بود که جایگزین printf و scanf شد. در ادامه مهمترین ویژگی اضافه شده Standard Template Library بودهاست.