AspectC++
ایسپیکٹ سی + + سی اور سی + + زبانوں کی پہلو پر مبنی توسیع ہے۔ اس میں ایک سورس ٹو سورس مرتب ہے، جو ایسپیکٹ سی + + سورس کوڈ کو مرتب کرنے کے قابل سی + + میں ترجمہ کرتا ہے۔ مرتب کرنے والا جی این یو جی پی ایل کے تحت دستیاب ہے، حالانکہ مائیکروسافٹ ونڈوز کے لیے مخصوص کچھ توسیعات صرف پیور سسٹمز جی ایم بی ایچ کے ذریعے دستیاب ہیں۔ پہلو پر مبنی پروگرامنگ ایک واحد ماڈیول، ایک پہلو میں کراس کاٹنے کے خدشات کو ماڈیولرائز کرنے کی اجازت دیتا ہے۔ پہلو موجودہ کلاسوں میں ترمیم کر سکتے ہیں، لیکن عام طور پر وہ 'مشورہ' فراہم کرتے ہیں جو موجودہ فعالیت سے پہلے، بعد میں یا اس کے آس پاس چلتا ہے۔ مثال کسی مخصوص فنکشن کی تمام کالوں کا سراغ ایک پہلو کا استعمال کرتے ہوئے لگایا جا سکتا ہے، بجائے اس کے کہ 'سی آر آر' داخل کیا جائے یا کئی جگہوں پر بیانات پرنٹ کیے جائیں: پہلو ٹریسیر {ایڈوائس کال ("%% آئیٹر:: ری سیٹ (.)"): اس سے پہلے () {سی آر آر <<"آئی ٹی آر کو کال کرنے والا ہے::" <<جوائن پوائنٹ:: دستخطی () <<اینڈل ؛} "کے لیے ری سیٹ کریں ؛ ٹریسیر پہلو کسی بھی کال سے پہلے% آئیٹر:: ری سیٹ پر پیغام پرنٹ کر دے گا۔ % Iter نحو کا مطلب ہے کہ یہ Iter میں ختم ہونے والی تمام کلاسوں سے میل کھائے گا۔ سورس کوڈ میں ہر 'مماثل' مقام کو جوائن پوائنٹ کہا جاتا ہے-مشورہ اس کوڈ سے منسلک ہوتا ہے (یا مشورہ دیتا ہے)۔ ایسپیکٹ سی + + جوائن پوائنٹ کے بارے میں معلومات فراہم کرنے اور ان تک رسائی کے لیے جوائن پوائنٹ اے پی آئی فراہم کرتا ہے۔ مثال کے طور پر، فنکشن: جوائن پوائنٹ:: سگنیچر () فنکشن کا نام واپس کرتا ہے (جو% Iter:: ری سیٹ سے مماثل ہے) جسے کال کیا جانا ہے۔ جوائن پوائنٹ اے پی آئی مرتب کرنے کے وقت کی قسم کی معلومات بھی فراہم کرتا ہے جسے کسی پہلو کے اندر استعمال کیا جا سکتا ہے تاکہ کسی طریقہ یا فنکشن کی قسم یا قدر اور واپسی کی قسم اور واپسی کی قیمت تک رسائی حاصل کی جا سکے۔ حوالہ جات بیرونی روابط پہلو پر مبنی پروگرامنگ پر پہلو سی + + مضامین اور ماضی میں اے او ایس ڈی کانفرنسوں میں پہلو سی + + پہلو پر مبنی پروگرامنگ سی + + پروگرامنگ زبان خاندان