小编iva*_*lee的帖子

增加构造函数中的唯一ID号

我正在使用C#中的一个对象,我需要对象的每个实例都有一个唯一的id.我对此的解决方案只是放置一个成员变量,我在类中和我将拥有的构造函数中调用idCount:

objectID = idCount;
idCount++;
Run Code Online (Sandbox Code Playgroud)

我认为这可以解决我的问题,但似乎idCount永远不会增加,即使构造函数被多次调用.例如,如果idCount = 1,则所有对象的objectID仍为1.为什么idCount ++不起作用?

任何帮助,将不胜感激.抱歉,如果我的解释不充分,我不确定如何解释它.

c# constructor auto-increment

10
推荐指数
2
解决办法
2万
查看次数

每次调用构造函数时,如何使C#随机数生成器更改?

我有两个班,一个教师班和一个班级班.在我的程序中,我创建了一个包含10个Teacher对象的数组,每个Teacher对象中有一个包含10个Student对象的数组.每个Student对象也有一个整数数组作为成员变量,当每个Student被实例化时,它自己的整数数组都用随机数生成器中的数字填充.我的程序是这样的:

  • 创建一个类型为Teacher的数组,大小为10
  • 然后用10个实际的教师对象填充该数组
  • 每个Teacher对象都包含一个大小为10的Student对象数组作为成员变量
  • 每个Teacher对象中的Student数组都填充了实际的Student对象
  • 每个学生对象都有一个整数数组,在Student对象构造函数中填充了随机数.

这是我遇到的问题:似乎每次为每个教师创建10个Student对象时,即使我调用.Next()函数直到下一个,Student对象构造函数中的随机数生成器也不会重置或更改为下一个Teacher对象创建10个Student对象.我想要的是10个教师对象,每个对象都有自己的学生对象,这些对象有自己的整数数组,里面填充了随机生成的数字.

任何帮助,将不胜感激!在我的最后一个问题中,我遇到了构造函数的这种问题,这是一个问题是否是静态的,我不确定这次是什么情况.如果我对任何事情都不够清楚,请问我问题!

更新**所以在查看MSDN后,我在他们的示例代码"Thread.Sleep(2000)"中找到并将其粘贴到我的学生构造函数中,只是为了看看它做了什么.它似乎已经解决了问题,虽然我的程序现在运行得慢很多,是否有一个最小的睡眠值要等到Random.Next()使用来自时钟的新种子,即使我确实解决了问题,是否有更好的方法吗?我的随机数生成器已经是Student的静态成员变量.

c# random static constructor

3
推荐指数
2
解决办法
9521
查看次数

标签 统计

c# ×2

constructor ×2

auto-increment ×1

random ×1

static ×1