我寫了下面的類返回狀滾動骰子的隨機數:理解類並且使用隨機
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace GameTest
{
class Dice
{
public int publicMinNum
{
get { return _minNum; }
set { _minNum = value; }
}
public int publicMaxNum
{
get { return _maxNum; }
set { _maxNum = value; }
}
static int _minNum;
static int _maxNum;
static Random diceRoll = new Random();
public int rolled = diceRoll.Next(_minNum, _maxNum);
}
}
此類稱爲幾次在我的表格:
private void btnPushMe_Click(object sender, EventArgs e)
{
Dice myRoll = new Dice();
myRoll.publicMinNum = 1;
myRoll.publicMaxNum = 7;
lblMain.Text = myRoll.rolled.ToString();
Dice mySecondRoll = new Dice();
mySecondRoll.publicMinNum = 1;
mySecondRoll.publicMaxNum = 13;
lblMain2.Text = mySecondRoll.rolled.ToString();
}
正如你所看到的,我給班級打電話myRoll
和mySecondRoll
兩次。我認爲通過這樣做,將創建的類和輸出兩個不同號碼(一個1和6之間,另1和12)
我遇到的問題是獨立的實例:
1)所述第一number out總是0.
2)這個類的兩個實例互相干涉,應該在1到6之間的數字不是。
我想知道,不只是如何解決代碼,但也想解釋這裏發生了什麼,爲什麼,謝謝。
問計教程(或其他廣泛的問題)不是建設性的,不適合Stack Exchange站點的Q&A格式,並引發討論。 –
這段代碼有幾個問題。您的整數最小和最大字段不應該是靜態的,您的滾動字段既不應該公開,也不應該按照它的方式進行初始化。但主要是,你是正確的,你需要一個更好的教程,但不幸的是,這不是這個網站的主題。我投票結束,因爲沒有建設性。 –
http://www.blackwasp.co.uk/CSharpClassProperties.aspx – Learner