[C#] Decimal? vs Decimal ต่างกันอย่างไร

หลายคนอาจจะงงนะครับว่าทำไมใน C# Version ใหม่ๆ (จริงๆ ไม่น่าจะใหม่นะ เพราะมีมาพอสมควรและ) เราเจอ Code แนวๆนี้ ถ้าสังเกตุจาก Code ตัวอย่างดีพบว่าที่ DataType มันมีเครื่องหมายคำถามเติมเข้ามา ตรงนี้ไม่ต้องสงสัยอะไรนะครับ การที่มี ? เพิ่มเข้ามาเป็นการบอก Datatype ที่เราประกาศนั้นเป็น Nullable Types สามารถเก็บค่า null ได้ครับ โดยสามารถอ่านข้อมูลเพิ่มเติมได้ ดังนี้ครับ Reference Nullable Types