ВОПРОС ДЛЯ ДОМАШНЕГО ЗАДАНИЯ: Мне нужно создать простую викторину, которая считывает данные из CSV-файла. Мои данные для конкретного вопроса структурированы следующим образом: «Вопрос; Ответ А; Ответ Б; Ответ В; Ответ Г; Письмо правильного ответа».
Мы используем серию геттеров и сеттеров для хранения всех соответствующих данных для одного объекта вопроса, и у меня возникла проблема с массивом, который я создал для хранения четырех ответов.
В моем конструкторе я использую этот код, который, как мне кажется, создает экземпляр рассматриваемого массива ответов:
class TriviaQuestionUnit
{
...
const int NUM_ANSWERS = 4;
string[] m_Answers = new String[NUM_ANSWERS];
public string[] Answer
{
get { return m_Answers[]; }
set { m_Answers = value[];
}
...
// Answer array
public string[] GETAnswer(int index)
{
return m_Questions[index].Answer;
}
...
}
Я получаю доступ к геттеру и сеттеру из моего метода TriviaQuestionBank
, который включает в себя этот код:
...
const int NUM_QUESTIONS = 15;
TriviaQuestionUnit[] m_Questions = new TriviaQuestionUnit[NUM_QUESTIONS];
...
// Answer array
public string[] GETAnswer(int index)
{
return m_Questions[index].Answer;
}
...
Я использую StreamReader
для чтения строки ввода из моего файла
...
char delim = ';';
String[] inputValues = inputText.Split(delim);
...
анализирует ввод в массиве, из которого я создаю данные вопроса. Для моих четырех ответов с индексами от 1 до 4 в массиве inputValues
я заполняю массив этого вопроса четырьмя ответами.
...
for (int i = 0; i < NUM_ANSWERS; i++)
{
m_Questions[questionCounter].Answer[i] = inputValues[i + 1];
}
...
Я получаю ошибки Syntax code, value expected
в геттерах/сеттерах в моем конструкторе, и если я изменяю переменную на m_Answers[NUM_QUESTIONS]
, я получаю сообщение об ошибке can't implicitly convert string to String[]
.
Надеюсь, я разместил достаточно кода, чтобы кто-то помог указать мне правильное направление. Я чувствую, что упускаю что-то очевидное, но я просто не могу заставить это работать.