前提
2つあります。
1.processingで四角形を扱うクラス「MyRect」を生成している際に、
エラーメッセージ「unexpected token:width」
(恐らく予期しないトークン:widthという意味だと思います)と表示されるのですがどうしてでしょうか?
2.同上のコードを実行時、「Missing right curly bracket"}"」
と右中括弧(これ→ } のことです)の数はあってるはずなのですが、なぜ出てしまうのかを教えていただきたいです。
実現したいこと
四角形を扱うクラスMyRectを完成させたい
発生している問題・エラーメッセージ
6行目「unexpected token:width」 24行目「Missing right curly bracket"}"」
該当のソースコード
processing
1//四角形を扱うクラス「MyRect」 2 3class MyRect { //クラスのブロックの生成 4 int x; //四角形の位置のx座標を扱うフィールドxを宣言(整数型) 5 int y; //四角形の位置のy座標を扱うフィールドyを宣言(整数型) 6 int width //四角形の幅を扱うフィールドwidthを宣言(整数型) 7 int height //四角形の高さを扱うフィールドheightを宣言(整数型) 8 9 //コンストラクタを定義する 10 // (仮引数:xの初期化tempX, yの初期化tempY, widthの初期化tempW, heightの初期化tempH) 11 MyRect(int tempX, int tempY, int tempW, int tempH) { 12 x=tempX; //xにtempXを代入する 13 y=tempY; //yにtempYを代入する 14 width=tempW; //widthにtempWを代入する 15 height=tempH; //heightにtempHを代入する 16 } 17 18 //四角形の面積を求めるメゾットgetArea(), 戻り値の型:int, 引数:なし 19 int getArea() { 20 return width*height; //幅と高さの積を返す 21 } 22 //四角形を描画するメゾット drawShape(), 戻り値:なし, 引数:なし 23 void drawShape() { 24 rect(x, y, width, height) //x座標, y座標の位置に、幅 width, 高さ heightの四角形を描く 25 } 26 }
試したこと
インターネット検索や解説書を読んだがそれっぽい記述が見当たらなかったです。
セミコロンの書き忘れ…
16,25,26行の}が全角です。
IDEを使っていませんか?使っていないのであれば是非使いましょう。
ご指摘ありがとうございます。
セミコロンは追加しました。
16、25、26行目の}を半角にしたら「Missing right curly bracket"}"」は消えました。
IDEを使っていないのですがおすすめのIDEソフトは有りますでしょうか?
フリーソフトであればありがたいのですが…
引き続き6行目の「unexpected token : width」の対応を教えていただけますでしょうか。
一応標準の(processing.orgからダウンロードできる)Processing環境は、それほど高機能ではありませんがIDEと言えなくはないものです。定義ジャンプなどもう少し機能が欲しいなぁ、と思うことがあるのは事実ですが、Processingでそれほど大きなプログラムは組まないだろう、という割り切りなのでしょうね。
TN8001さんの回答にある「自動フォーマット」機能もありますので(標準ではショートカットCtrl+Tになっていると思います)、是非活用してみてください。
> セミコロンの書き忘れ
で、)を見たらセミコロンをつけるのが習慣になりかかった頃に
if(...); {...}
とか
for(...); {...}
とやって半日悩む、というのが初学者の通過儀礼ですね。

回答1件
あなたの回答
tips
プレビュー