Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

จะส่งพอยน์เตอร์เป็นพารามิเตอร์ไปยังเมธอดใน C # ได้อย่างไร


หากต้องการส่งพอยน์เตอร์เป็นพารามิเตอร์ไปยังเมธอด ให้อ้างอิงขั้นตอนด้านล่าง -

ประการแรก สร้างการสลับฟังก์ชันด้วยตัวปรับแต่งที่ไม่ปลอดภัย

public unsafe void swap(int* p, int *q) {
   int temp = *p;
   *p = *q;
   *q = temp;
}

ตอนนี้ภายใต้ static void main ให้เพิ่มค่าสำหรับตัวแปรที่หนึ่งและตัวที่สอง ตั้งค่าพอยน์เตอร์สำหรับทั้งคู่

แสดงค่าของตัวแปรแล้วเรียกใช้เมธอด swap() ที่แสดงด้านบน วิธีการสลับค่าและแสดงผล -

public unsafe static void Main() {
   Program p = new Program();
   int var1 = 10;
   int var2 = 20;
   int* x = &var1;
   int* y = &var2;

   Console.WriteLine("Before Swap: var1:{0}, var2: {1}", var1, var2);
   p.swap(x, y);

   Console.WriteLine("After Swap: var1:{0}, var2: {1}", var1, var2);
   Console.ReadKey();
}