اقتباسC allows you to use pointers.C++ allows you to use pointers and references.
C# normally only allows you to use references.
طيب لو استخدمت الدالة "unsafe" وخيار الكومبايلر "unsafe" فذلك سيسمح لي باستخدام ال pointers وال references في C#
مثال:
unsafe
{
int anInt = 42; // Declare an int
int* pInt; // Declare a pointer to an int
pInt = &anInt; // Put address of anInt in pInt
}لذلك يمكن كتابة كود C في اللغة C#
هكذا يصبح استخدام ال pointers مسموح في لغة ال C# ويعتبر هذا الكود لغة C#
لكن استخدام "unsafe" في لغة ال C# لا ينصح به، لأن البرامج التي سيتم كتابتها قد تحوي مشاكل برمجية تم تفاديها في لغة C# ( كالأنواع العديدة من الأخطاء البرمجية وقضايا الحماية بسبب أخطاء استخدام الكود لكتابة ال pointers )
وظيفة ال "unsafe" هنا السماح لك بكتابة كود C# بواجهة كود قديم مكتوب بلغة ال C أو C# ،
لكن من الأفضل تجنب استخدامه،
********
تحية طيبة
أخوكم
علاء
:)
