সংক্ষিপ্ত উত্তর
int = Int32 = System.Int32 — এই তিনটিই একই জিনিস। int হলো C# ল্যাঙ্গুয়েজের এলিয়াস (alias), Int32 হলো .NET ফ্রেমওয়ার্কের টাইপ নাম।
তুলনা
| বিষয় | int | Int32 / System.Int32 |
| প্রকৃতি | C# কীওয়ার্ড (alias) | .NET Framework Class Library (FCL) টাইপ |
| নেমস্পেস | প্রয়োজন নেই (গ্লোবাল) | System নেমস্পেস বা using System; |
| কম্পাইলড IL | একই (int32) | একই (int32) |
| রানটাইম পারফরম্যান্স | একই | একই |
| পছন্দনীয়তা | C# কোডে (স্টাইল গাইড) | ভাষা-নিরপেক্ষ কোড, রিফলেকশন, API ডকুমেন্টেশন |
কোড উদাহরণ
using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
// দুটোই একই
int x = 5;
Int32 y = 5;
System.Int32 z = 5;
Console.WriteLine(x); // 5
Console.WriteLine(y); // 5
Console.WriteLine(z); // 5
// টাইপ চেক
Console.WriteLine(typeof(int) == typeof(Int32)); // True
Console.WriteLine(typeof(int) == typeof(System.Int32)); // True
// Min/Max ভ্যালু
Console.WriteLine(int.MinValue); // -2147483648
Console.WriteLine(int.MaxValue); // 2147483647
Console.WriteLine(Int32.MinValue); // -2147483648
}
}
}
অন্য প্রাইমিটিভ টাইপের এলিয়াস
| C# Keyword | .NET Type | বিবরণ |
| bool | System.Boolean | True/False |
| byte | System.Byte | 8-bit unsigned |
| sbyte | System.SByte | 8-bit signed |
| char | System.Char | 16-bit Unicode |
| short | System.Int16 | 16-bit signed |
| ushort | System.UInt16 | 16-bit unsigned |
| int | System.Int32 | 32-bit signed |
| uint | System.UInt32 | 32-bit unsigned |
| long | System.Int64 | 64-bit signed |
| ulong | System.UInt64 | 64-bit unsigned |
| float | System.Single | 32-bit floating |
| double | System.Double | 64-bit floating |
| decimal | System.Decimal | 128-bit precise |
| object | System.Object | বেস টাইপ |
| string | System.String | ইমিউটেবল স্ট্রিং |
কখন কী ব্যবহার করবেন?
- C# কোডে:
int, string, bool ইত্যাদি কীওয়ার্ড ব্যবহার করুন (C# কনভেনশন)
- রিফলেকশন/সিরিয়ালাইজেশন/API:
typeof(Int32), Type.GetType("System.Int32")
- ভাষা-নিরপেক্ষ ডকুমেন্টেশন:
Int32 ব্যবহার করুন (VB.NET, F# ডেভেলপারদের জন্য পরিচিত)
- প্ল্যাটফর্ম-নির্দিষ্ট কোড:
IntPtr, UIntPtr (পয়েন্টার সাইজ অনুযায়ী ৩২/৬৪ বিট)
মজার তথ্য
// এই দুটো কম্পাইলারের দৃষ্টিতে একই:
int x = 5;
System.Int32 x = 5;
// কিন্তু ভেরিয়েবল নাম হিসেবে ব্যবহার:
int int = 5; // ❌ Error: 'int' is a keyword
int Int32 = 5; // ✅ OK (but confusing)
Int32 Int32 = 5; // ✅ OK (but very confusing)