รหัสทั้งหมดที่เขียนใน. NET ภาษารวบรวม MSIL แต่มีงานเฉพาะ / การดำเนินงานที่คุณสามารถทำได้เพียงใช้ MSIL โดยตรงหรือไม่
ให้เราทำสิ่งต่าง ๆ ได้ง่ายขึ้นใน MSIL กว่า C #, VB.NET, F #, j # หรือภาษา NET อื่น ๆ
จนถึงตอนนี้เรามีสิ่งนี้:
- หางเรียกซ้ำ
- Generic Co / Contravariance
- เกินพิกัดที่แตกต่างกันเฉพาะในประเภทผลตอบแทน
- แทนที่ตัวดัดแปลงการเข้าถึง
- มีคลาสที่ไม่สามารถสืบทอดจาก System.Object
- ข้อยกเว้นที่กรอง (สามารถทำได้ใน vb.net)
- การเรียกใช้วิธีเสมือนของชนิดคลาสคงที่ปัจจุบัน
- รับการจัดการกับชนิดของค่าชนิดบรรจุกล่อง
- ลอง / ผิด
- การใช้ชื่อต้องห้าม
- กำหนดก่อสร้าง parameterless ของคุณเองสำหรับประเภทค่า
- กำหนดกิจกรรมด้วย
raise
องค์ประกอบ - การแปลงบางอย่างได้รับอนุญาตจาก CLR แต่ไม่ใช่โดย C #
- ทำให้ไม่ใช่วิธีการที่เป็น
main()
.entrypoint
- ทำงานกับชนพื้นเมือง
int
และunsigned int
ประเภทพื้นเมืองโดยตรง - เล่นกับตัวชี้ชั่วคราว
- คำสั่ง emitbyte ใน MethodBodyItem
- โยนและจับระบบที่ไม่ใช่ประเภทข้อยกเว้น
- รับช่วง Enums (ไม่ได้ยืนยัน)
- คุณสามารถจัดการกับอาร์เรย์ของไบต์เป็นอาร์เรย์ (ขนาดเล็ก 4x) ของ ints
- คุณสามารถมีฟิลด์ / วิธี / คุณสมบัติ / เหตุการณ์ทั้งหมดมีชื่อเดียวกัน (ไม่ได้รับการยืนยัน)
- คุณสามารถแยกสาขากลับเป็นบล็อกลองได้จากบล็อก catch ของมันเอง
- คุณสามารถเข้าถึงตัวระบุการเข้าถึง famandassem (
protected internal
คือ fam หรือ assem) - เข้าถึง
<Module>
ชั้นเรียนโดยตรงเพื่อกำหนดฟังก์ชั่นทั่วโลกหรือโมดูลเริ่มต้น