Int32的实现

时间:2014-09-19 08:48:01

标签: c#

intInt32的别名,也是C#语言规范中的关键字。

Reference Source有以下代码:

[Serializable]
[System.Runtime.InteropServices.StructLayout(LayoutKind.Sequential)] 
[System.Runtime.InteropServices.ComVisible(true)]
#if GENERICS_WORK
    public struct Int32 : IComparable, IFormattable, IConvertible
        , IComparable<Int32>, IEquatable<Int32>
///     , IArithmetic<Int32>
#else
    public struct Int32 : IComparable, IFormattable, IConvertible
#endif
    {
        internal int m_value;

        public const int MaxValue = 0x7fffffff;
        public const int MinValue = unchecked((int)0x80000000);

Int32封装了int。有人可以解释为什么别名在内部用于别名的定义吗?这与长指向Int64然后Int64声明long变量相同。我认为这是编译器的特权是做它喜欢的事情而int总是意味着32位内存位置,这只是添加方法的一种方式,但它让我烦恼。

0 个答案:

没有答案