سی++

سی++ (تلفظ :سی پلس پلس) عمومی مقاصد کی حامل پروگرامنگ زبان ہے جو سی پروگرامنگ زبان کی توسیع سے وجود میں آئی ہے۔ یہ پروگرامنگ زبان متعین مقصد (Object Oriented)، حکمیہ (imperative) اور عمومی (generic) خصوصیات کی حامل ہے۔ بیان سٹروسٹروپ (Bjarne Stroustrup) نے 1979ء میں اے ٹی اینڈ ٹی بیل لیباریٹریز (AT&T Bell Labs) میں سی پروگرامنگ زبان کو بہتر بنانے کے لیے اس میں اضافے کے دوران سی++ پروگرامنگ زبان کو تیار کیا تھا۔

شروع میں سی++ کو "سی مع کلاسز " (C with classes) کہا جاتا تھا کیونکہ اس میں سی زبان کی تمام خصوصیات کے ساتھ درجات (Classes) کا تصور بھی تھا۔ 1983ء میں اسے سی++ کا نام دیا گیا۔

ہائیر لیول لینگوئج اور لوئیر لیول لینگوئج کی خصوصیات کی حامل ہونے کے باعث اسے انٹرمیڈیٹ لیول لینگوئج بھی کہا جاتا ہے۔

سی++ سے کئی پروگرامنگ زبانیں ​متاثر ہیں جیسے کہ سی شارپ، ڈی، جاوا اور سی زبان کا نیا ورژن۔ بہت سے فروخت کنندہ، سی پلس پلس کمپائلر فراہم کرتے ہیں جیسے کہ فری سوفٹویر فاؤنڈیشن، انٹیل، مائیکروسافٹ اور آئی بی ایم۔

تاریخ 

1979ء میں پی ایچ ڈی کے تھیسس پر کام کے دوران سیمولا پروگرامنگ زبان بیان سٹروسٹروپ کے زیر استعمال تھی۔ سیمولا وہ پہلی پروگرامنگ زبان تھی جس میں آبجیکٹ اورینٹڈ پروگرامنگ کی خصوصیات موجود تھیں، جو سوفٹویر ڈیویلپمینٹ کے لیے نہایت مفید ہے۔ لیکن یہ زبان عملی طور پر بہت سست روی سے کام کرتی تھی۔ لہذا انہوں نے سی مع کلاسز پر کام شروع کیا جس کا مقصد سی زبان میں آبجیکٹ اورینٹڈ خصوصیات کا اضافہ تھا۔

سی مع کلاسز کا پہلا کمپائلر سی فرنٹ (Cfront) تھا جسے 1993ء تک استعمال کیا جاتا رہا۔ 1983ء میں سی مع کلاسز کو سی++ کا نام دیا گیا اور اس کا پہلا ایڈیشن 1985ء میں منظر عام پر آیا۔ 1989ء میں سی++2.0 پیش کیا گیا اور 1991ء میں اس ایڈیشن کو اپ گریڈ کیا گیا۔ 1998ء میں سی++ معیارات کمیٹی نے آئیسو کے لیے سی++ کا پہلا بین الاقوامی معیار جاری کیا جسے سی++98 کہا جاتا ہے۔2003ء میں سی++ کا نیا معیار جاری کیا گیا۔ 2011ء میں سی++11  جاری کیا گیا جس میں کئی نئے فیچرز متعارف کروائے گئے۔ دسمبر 2014ء میں چند ایک تبدیلیوں کے ساتھ سی++14 پیش کیا گیا۔

حوالہ جات 

سی++
1983ء میں تخلیق کردہ پروگرامنگ زبانیں
آبجیکٹ اوریئنٹڈ پروگرامنگ زبانیں
پروگرامنگ زبانیں مع آئیسو معیار
خاندان سی++ پروگرامنگ زبان
کراس پلیٹ فارم سافٹ ویئر
کلاس بیسڈ پروگرامنگ زبانیں
ہائی لیول پروگرامنگ زبانیں