回答編集履歴
2
文がわかりにくかったので
answer
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
};
|
7
7
|
bigone bo = {123, "this is a BIG structure"};
|
8
8
|
```
|
9
|
-
と分けて書いた場合と同じ意味になります。
|
9
|
+
と分けて書いた場合と同じ意味になります。一緒に書いてしまう書き方は特に無名構造体を使うときに重宝されます。
|
10
10
|
参考: [ロベールのC++教室 - 第12章 名無し -](http://www7b.biglobe.ne.jp/~robe/cpphtml/html03/cpp03012.html)
|
11
11
|
もし、この書き方でエラーが出るのであればコンパイラが古く標準仕様のC++に対応していないと思われます。手元ClangとGCC両方でエラーにはなりませんでした。コンパイラを変えるか、バージョンアップすることをお勧めします。
|
12
12
|
|
1
ちょっとだけ変更
answer
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
C++では構造体の定義と、変数の宣言(および初期化)を一緒に書く事ができます。つまり、
|
2
2
|
```C++
|
3
|
-
struct bigone{
|
3
|
+
struct bigone {
|
4
4
|
int serno;
|
5
5
|
char text[1000];
|
6
6
|
};
|
7
7
|
bigone bo = {123, "this is a BIG structure"};
|
8
8
|
```
|
9
|
-
と書いた場合と同じ
|
9
|
+
と分けて書いた場合と同じ意味になります。この書き方は特に無名構造体を使うときに重宝されます。
|
10
10
|
参考: [ロベールのC++教室 - 第12章 名無し -](http://www7b.biglobe.ne.jp/~robe/cpphtml/html03/cpp03012.html)
|
11
11
|
もし、この書き方でエラーが出るのであればコンパイラが古く標準仕様のC++に対応していないと思われます。手元ClangとGCC両方でエラーにはなりませんでした。コンパイラを変えるか、バージョンアップすることをお勧めします。
|
12
12
|
|