「一週間で身につくc#言語の基本」というサイトを参考にして勉強しているのですが、サンプルコード通りに書いてもエラーが出てしまいます。なにがいけないのでしょうか。
プログラム
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Sample601 { class Person { public string name = ""; public int age = 0; public void ShowAgeAndName() { Console.WriteLine("名前:{0} 年齢:{1}", name, age); } public void SetAgeAndName(string name, int age) { this.name = name; this.age = age; } } }
ファイル
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Sample601 { class Program { static void Main(string[] args) { Person p1, p2; p1 = new Person(); p2 = new Person(); p1.name = "山田太郎"; p1.age = 19; p2.SetAgeAndName("佐藤花子", 23); p1.ShowAgeAndName(); p2.ShowAgeAndName(); } } }
エラーコードの内容
プログラムは、エントリポイントに適切な静的Mainメソッドを含んでいません。
遅くなってしまい申し訳ございません。
スタートアップオブジェクトの設定はどうなってますか?
https://daisuki-dotnet.com/%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%82%A8%E3%83%B3%E3%83%88%E3%83%AA%E3%83%9D%E3%82%A4%E3%83%B3%E3%83%88/#toc11
たぶん、プロジェクトとファイルの構成の作り方が間違っていたのだと思います。以前のご質問同様、Visual Studio 2019をお使いですか?
ソリューションエクスプローラーのスクリーンショットを上げてみてください。
変ですね。 https://teratail.com/questions/327772 ← 半月前は問題なかったのですよね?
書籍と環境まで含めて同じですか?
teratailで「参考書通りに書いている」という質問は定期的に上がりますが、大抵その通り書けていないし、目検なので「同じである」というエビデンスも取れません。lとIは別だし大文字小文字も別物です。
「書籍通りに書くこと」を目標としているからそうなります。
参考にされたサイトのコード自体に問題はありませんが、プロジェクトの作り方はVisual Studioのバージョンに多少振り回されるので、そこまで載っていないのだと思います。(現に、当該サイトではVS2015を前提にされています) 本件についてはソリューションファイルを含め、PersonクラスとProgramクラスをどの*.csファイルに置いて作成してしまったかが問題なのだと思います。今後そういった間違いをしないよう、既に本コメント欄で指摘をいただいているように、設定や現状の構成(スクリーンショット)などを追記し、どう作るべきであったか理解するようにしましょう。
質問者さん、無言ですが、回答しているのでそれに対するフィードバックを書いてください。役に立った/立たなかったぐらいはすぐフィーバックできるのでは? 役に立たなかったなら、どこがダメだったかを書いてもらえると、より質問者さんが望む回答が出てくるかも。とにかく無言は NG です。
返信が遅れてしまい本当に申し訳ございません。こちらから質問しておいて、しかも既に返信が遅れている状態で本当に図々しいのですが、下さった回答を読み、試してみる時間が明日の午後になってしまうので明日の午後に返信させて戴きます。本当にすみません。
dodos86様
返信が遅れてしまい申し訳ございません。
>vs2019をお使いですか?
そうです。そこに初めから目をつけるべきだったと反省しております。
ご指摘ありがとうございました。
SurferOnWww様
返信が遅れてしまい申し訳ございません。
>半月前はもんだいなかったのですよね?
はい、問題ありませんでした。今回は私のファイルの作り方がいけなかったようです。しかし、貴重なご指摘ありがとうございました。
m.ts10806様
>書籍と環境まで含めて同じですか?
確認したら違いました。
>teratailで「参考書通りに書いている」という質問は定期的に上がりますが、大抵その通り書けていない
し、目検なので「同じである」というエビデンスも取れません。lとIは別だし大文字小文字も別物で
す。
自分でも何回も書き直して、そのたびにエラーが出るので教本のサンプルコードをコピペするということもしましたが同じようにエラーが出てしまったので質問させていただいた次第です。
>「書籍通りに書くこと」を目標にしているからそうなります。
完全に独学で勉強しているので、数学が苦手な人の勉強法のように「わからないところは意味は後々わかってくるはずだから今はとりあえず書き方を完璧にしよう」という精神でやっていました。
環境が違うということに初めに気づいておくべきだったと反省しております。貴重なご指摘をありがとうございました。
回答してくださった皆様
貴重なお時間を私の初歩的な質問に充ててくださり本当にありがとうございました。
拙い質問と遅い返信でみなさまにご迷惑をかけてしまいました。しかし下さったご指摘で無事にエラーなくデバッグすることができました。これからも頑張って勉強していきたいと思います。改めて皆様、本当にありがとうございました。
回答2件
あなたの回答
tips
プレビュー