回答編集履歴

2

BG_Initで初期化しようとするとこうなるという例のコードを追加。

2018/09/04 11:04

投稿

Seiten_Minagawa
Seiten_Minagawa

スコア58

test CHANGED
@@ -34,6 +34,28 @@
34
34
 
35
35
  BG_Initで初期化したいとのことですが、通常の配列だと宣言時以外は一気に初期化することはできません。
36
36
 
37
+ BG_Initで初期化しようとすると、このようになってしまいます。(繰り返し処理もできますが、ふつう全てのマップチップが同じということはありえないでしょうし……)
38
+
39
+ ```C++
40
+
41
+ void BG_Init()
42
+
43
+ {
44
+
45
+ map[0][0] = 0;
46
+
47
+ map[0][1] = 0;
48
+
49
+ map[0][2] = 0;
50
+
51
+ map[0][3] = 0;
52
+
53
+ //以下省略
54
+
55
+ }
56
+
57
+ ```
58
+
37
59
  vectorという動的配列を使ったり、ファイルなどにマップの情報を分離しそこから繰り返し処理で読み出す方法を使ったりすることで一気に初期化するという方法もあります。
38
60
 
39
61
  質問は「アクセス違反を解消したい」とのことで質問の大筋から逸れてしまうのでここでコードを挙げることは差し控えさせていただきます。ご了承ください。

1

コメントを受けて回答に追記。

2018/09/04 11:04

投稿

Seiten_Minagawa
Seiten_Minagawa

スコア58

test CHANGED
@@ -27,3 +27,13 @@
27
27
  }
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ ### コメントを受けて
34
+
35
+ BG_Initで初期化したいとのことですが、通常の配列だと宣言時以外は一気に初期化することはできません。
36
+
37
+ vectorという動的配列を使ったり、ファイルなどにマップの情報を分離しそこから繰り返し処理で読み出す方法を使ったりすることで一気に初期化するという方法もあります。
38
+
39
+ 質問は「アクセス違反を解消したい」とのことで質問の大筋から逸れてしまうのでここでコードを挙げることは差し控えさせていただきます。ご了承ください。