我正在製作一個'測驗類型'程序,其中問題從文件中讀取,作爲對象存儲並存儲在列表中。 我不知道如何檢查它們是否被正確存儲,所以我也會發布存儲代碼。在列表中訪問對象
我的問題是,我似乎無法訪問我存儲的任何數據。 例如:
vartrack.Questions[0].MultipleChoice;
這應該返回true或false? 但由於某些原因,我無法訪問MultipleChoice數據。
我的代碼如下: 類代碼:
public class QuizQuestions
{
public bool MultipleChoice = false;
public string questiontext;
public static List<string> Answers = new List<string>();
public bool correct;
public QuizQuestions(string QuestionText)
{
questiontext = QuestionText;
}
public void AddAnswer(string answer)
{
Answers.Add(answer);
if (Answers.Count > 1)
{
MultipleChoice = true;
}
}
}
的代碼的其餘部分:
foreach(string currentline in vartrack.QuestionLines)
{
if (Question)
{
current = new QuizQuestions(currentline);
vartrack.Questions.Add(current);
Question = false;
}
else
{
if (currentline == "#")
{
Question = true;
}
else
{
if (current != null)
{
current.AddAnswer(currentline);
}
}
}
}
int num;
while (vartrack.Questions.Count > inputNoOfQs.Value)
{
Random random = new Random();
num = random.Next(0, vartrack.Questions.Count);
vartrack.Questions.RemoveAt(num);
}
vartrack.Questions[0].MultipleChoice;
由於
EDIT 1: Vartrack在此定義:
public static class vartrack
{
public static string[] QuestionSets;
public static List<string> QuestionLines = new List<string>();
public static List<object> Questions = new List<object>();
}
您不存儲任何變量。你只是隨機地調用方法。所以,你不能訪問它們,因爲你沒有嘗試。 –
我已經刪除了我的答案,因爲它不是問題。你得到的錯誤究竟是什麼?你期望什麼,會發生什麼? – doorstuck
錯誤是: 錯誤2'對象'不包含'MultipleChoice'的定義,並且沒有找到接受類型'object'的第一個參數的擴展方法'MultipleChoice'(您是否缺少using指令或程序集引用?) 我希望能夠訪問對象中的信息! 編輯:我知道那裏的代碼沒有做任何事情,它是在if語句中,但我爲了便於閱讀而將其刪除。 – darkdan21