func(x)は&x[0]を渡している。即ちintを指すポインタですかね?
structはコピーを渡すんでしょうか?
structオブジェクトのアドレスを渡したら、どうなる?一番最初の配列を渡したときと同じですね。
メニューの実行からはコンパイルできず。ターミナルからgccで出来ました。メンバーのx[10]をpublic:にしてますので、structの場合とあまり変わらないようです。jsonを変えれば出来るんでしょうね。分かりませんが。(*^^*)
次にx[10]をprivateに替えたらどうなんでしょうかね。やってみたいですね。
classを使ってみました。アドレスを渡すとか、値を渡すとか、関係なくなったように見えませんか?一番スッキリしたように思えますが。
多分ですが、オブジェクト指向プログラミングとか言うようですが、データとメソッドが一体になっているので、スッキリするんだと思います。