public enum SubStorage
{
eSubStorageAll,
eSubStorageEquipment,
eSubStorageBag,
eSubStorageBank,
}public class ItemDef
{
public static const UInt16 MAX_INVENTORY_SLOT = 150;
public static const UInt16 MAX_BUYBACK_SLOT_SIZE = 12;
public static const UInt16 MAX_CONTAINER_SIZE = 50;
public static const UInt16 MAX_BANK_SLOT_SIZE = 50;
}这两种类型的数据声明方式,请问谁的开销更大一下。。我觉得是用类, 不知道C#是怎么存储enum数据类型的, 请高手分析下 enum类型的对象模型,谢谢!
{
eSubStorageAll,
eSubStorageEquipment,
eSubStorageBag,
eSubStorageBank,
}public class ItemDef
{
public static const UInt16 MAX_INVENTORY_SLOT = 150;
public static const UInt16 MAX_BUYBACK_SLOT_SIZE = 12;
public static const UInt16 MAX_CONTAINER_SIZE = 50;
public static const UInt16 MAX_BANK_SLOT_SIZE = 50;
}这两种类型的数据声明方式,请问谁的开销更大一下。。我觉得是用类, 不知道C#是怎么存储enum数据类型的, 请高手分析下 enum类型的对象模型,谢谢!
public enum SubStorage
{
eSubStorageAll,
eSubStorageEquipment,
eSubStorageBag,
eSubStorageBank,
}public class ItemDef
{
const int eSubStorageAll = 1,
const int eSubStorageEquipment =1 ,
const int eSubStorageBag = 1,
const int eSubStorageBank =1
}这样呢
类是引用型.
从Ildasm 中可以看到枚举定义与你们想的不一样的,从其中可以看到枚举的类型性能比常量低
假设:SubStorage s = SubStorage.eSubStorageAll;“枚举可不是常量”,是针对 s 说的,还是针对 SubStorage.eSubStorageAll 说的?