قد يعلم الجميع ان ابرز استخدام للمعامل @ في لغة C# مع الثوابت الحرفية String Constants، فلو مللت من الاعتماد على حرف الهروب Escape character (الذي يرمز بـ \): C#: Console.WriteLine("C:\\Windows\\Temp\\File.TMP"); يمكنك بدء الثابت الحرفي بالمعامل @ حيث يفهم الثابت الحرفي كما هو مكتوب تماما: C#: Console.WriteLine(@"C:\Windows\Temp\File.TMP"); وبخصوص علامة التنصيص المزدوجة "، فاكتبها مرتين حتى تفهم المترجم على انها ليست نهاية الثابت الحرفي: C#: Console.WriteLine("Showing the qutation \" mark"); Console.WriteLine(@"Showing the qutation "" mark"); من ناحية أخرى، هناك استخدام اخر للمعامل @ غرضه التفريق بين المعرفات Identifiers والكلمات المحجوزة keywords والخاصة بلغة C#، فنحن مبرمجي Visual Basic لا نهتم كثيرا بمبرمجي C#، وقد يأتي احد مبرمجي VB بتطوير مكتبة DLL فيها فئة تحتوي على عضو لكلمة محجوزة خاصة بقبيلة C#: Basic: Public Class VBClass Public internal As Integer ... ... End Class عندما تنوي (يا مبرمج C#) استخدام هذه المكتبة من داخل مشروعك، فعليك استخدام المعامل @ دائما عند اي معرف Identifer يتعارض اسمه مع اسم اي كلمة محجوزة في لغتك: C#: ClassLibrary.VBClass obj = new ClassLibrary.VBClass(); Console.WriteLine(obj.@internal); او حتى في حدود لغتك الضيقة، فتستطيع كتابة شيئا مثل: C#: int @int = 10; Console.WriteLine (@int); الله يعينا عليكم يا مبرمجي C#، ما قلنا لكم الـ VB احسن! -- تركي