2016-05-02 5 views
-1

Я новичок в C#, и я столкнулся с некоторыми ошибками. Я пробовал искать ответы и учебники и т. Д., Но они не работают для меня. Вот тревожный код:Объявление массива (visual C++)

panou_medii->Visible = true ; 
    public: static int[] elem = new int[10] ; 

И это ошибка: ошибка C2143: синтаксическая ошибка: отсутствует «;» перед «общественностью». Без публичного статического фронта я получаю 4 ошибки и предупреждение. PS. Я использую Visual Studio 2010 и работаю над формой.

EDIT: Извините за путаницы все, это был Visual C++ вид окна, а не переменного тока #

+3

Опубликованный код не является C#. Вы уверены, что работаете в проекте C#? –

+0

@Bea Добро пожаловать в Stackoverflow, можете ли вы рассказать нам, какой проект вы создали? –

+0

Если честно, я начал работать над Windows Form вчера, и учебники C# работают. – Bea

ответ

5

Это потому, что код не правильный C# синтаксис, я думаю, что вы хотите:

panou_medii.Visible = true; 

public static int[] elem = new int[10]; 
+0

Это только порождает больше ошибок – Bea

+0

@Bea Я думаю, что вы не создали проект C# Windows Forms. Но другой. Вероятно, C или C++ –

+0

Я снова проверил, и вы правы, это была визуальная форма C++ windows. Извините за путаницу – Bea

1

Там это одна очевидная ошибка в коде, который вы показываете, и, вероятно, второй, в зависимости от того, что вы действительно делаете.

Простой один находится в линии

public: static int[] elem = new int[10] ; 

В C# модификаторы доступа (например, public, private, protected и т.д.) не с последующим двоеточием (:), так что правильный синтаксис

public static int[] elem = new int[10]; 

Но ваша первая линия:

panou_medii->Visible = true ; 

Здесь вы используете dereferencing/member access operator (->). Этот оператор может использоваться только с указателями в контексте unsafe.
Это не очень распространено в C#, и поскольку вы сказали, что работаете над формой, я думаю, это не то, что вы намеревались.

Чтобы получить доступ к свойствам экземпляра класса в C#, мы используем . operator. Visible в вашем примере, вероятно, является свойством Control, а panou_medii является экземпляром этого Control (или точно переменной, содержащей ссылку этого экземпляра).

Так чтобы получить доступ к Visible из множества, например использовать

panou_medii.Visible = true; 

Если вы получаете больше ошибок сейчас, вам нужно будет показать некоторые больше кода. Для начала: если две строки, которые вы показали, следуют друг за другом напрямую, что-то не так. Первая строка - это заявление, которое может существовать только внутри метод. Вторая строка является объявлением участника , который не может содержаться в методе. (Если вы объявите переменную внутри метода, вы не используете модификаторы доступа, такие как public).

Смежные вопросы