[英]Creating unique id and counter for the instances of the same class
我正在创建一个小的软件,可以让您在运行时添加控件。
我所做的是从控件中创建一个派生类,其中包括一个静态整数计数器,该计数器在每次构造该类的实例时都会增加。 这使我可以创建一个命名约定,因此名称永远不会重复。 例如我说
this.Name = "Label"+counter;
当我想将其存储在某种自定义序列中时,就会出现问题。 假设我创建了3个标签: Label0,Label1,Label2 ,然后删除了Label1 。 这将导致具有Label0和Label2 。
如果我序列化当前状态,然后加载该数据以重建状态,则标签的创建将导致计数器的值为1,即最后一个标签“ Label2”的名称 。 这意味着如果现在我要创建另一个标签,将为“ Label(counter + 1)” ,即“ Label2” ,从而导致重复。
我的问题是,创建计数器的最佳方法是这样的命名约定,它会像这样简单并跳过重复的名称?
将计数器与其他控件序列化,然后可以加载现有控件,也可以使用计数器值创建新控件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.