2016-05-15 40 views
0

こんにちは皆:)私は最近、C#の学習を開始し、地雷探偵ゲームを作成したかったのです。私はC++とJava(ちょうどコンソール)で以前に行われたパターンを持っていたし、C#でもうまくいっていたようだ。構造体の多次元配列C#

しかし、私は取り除くことができないエラーがあります。

struct Field 
{ 
    public int mine; 
    public int mines_around; 
    public State status; 

}; 

class Minefield 
{ 
    Random rand = new Random(); 
    const int Rows = 10; 
    const int Columns = 10; 
    Field[][] field; 
    int Difficulty; 

    public Minefield(int Diff)//from 1 to 10 
:ここ

は、コードの一部私はとのトラブルを持っているCS0649フィールド 'Minefield.field' を警告

はに割り当てられることはありません、と は、常にデフォルト値はnullになります

私はそこにあるような配列を作成する方法があると見てきました Field [、] field = new Field [10,10]しかし、私は同じエラーが発生しました。 経験豊富なC#プログラマーのアイデアですか?

+0

Field []]ではなく、[Field [] [] '、おそらくField [] [] field = new Field [10] [10];という方法がありますか? – cubrr

+0

また、[Field [、]と[Field [] [] 'の違いについても学ぶことに興味があります(http://stackoverflow.com/q/597720/996081)。 – cubrr

+0

これはエラーではありません(警告のみ)。フィールドを使用して(どこかの値にアクセスして)警告が消えたら、私は確信しています。 – JanDotNet

答えて

0

これはエラーではありませんが、静的コードの分析からわかります。それを使用するとすぐに消えます。値を割り当てたり、値を読み込んだりすることができます。

structは値型ですが、構造体の配列はそうではありません。したがって、private int aは自動的に割り当てられません。

関連する問題