[C#] Pass By ?

Blog ตอนที่แล้ว ผมได้กล่าวสรุปไปแล้ว ว่าภาษา Java มีการส่งข้อมูล Pass by Value อย่างเดียว คราวนี้มาอีกภาษาที่ผมใช้ในการทำงานบ้าง C# จากโลกของ .NOT เฮ้ยย .NET ครับ ซึ่งผมได้เขียน Code โดยปรับจาก Java ในบทความก่อน ดังนี้ ครับ ผ่านการ Test ไป 3 อันแล้ว หลายคนคงคิดและว่า C# มันต้อง Pass by Value เหมือน Java แหละ ไม่มี Pass by Reference หรอก แต่ผมบอกว่าคิดผิดครับ C# มี Keyword สุดแสบอีกอันครับ คือ ref เพื่อบอกว่าตอนนี้ เราส่งข้อมูลแบบ Pass by Reference ครับ ทำงานมา 2 ปีในฝั่ง .Net ผมเพิ่งเคยใช้เป็นครั้งแรกแหละ 555 โดยผมเพิ่มอีก 2 Method เพื่อทดสอบครับ คือ ChangeNameVer4 และ ChangeNameVer5 ครับ หลายคงอาจจะคิดว่า ChangeNameVer4 และ ChangeNameVer5 มันคล้ายกับ Code เก่าที่ผมเขียน หรือป่าว ? คำตอบ คือ เกือบคล้ายครับ สังเกตุดีๆที่ Parameter มี Keyword ref อยู่ครับ จากนั้นผมแก้ที่ Method main แล้วทดสอบ Run ครับ System.NullReferenceException ครับ Error สมใจเลย และ แสดงว่า C# Pass…