BuildingクラスのコンストラクタでFloorクラスのリストを作成したいのですが、
下記コンパイルエラーが表示され、ビルドが通りません。
同じような構造のFloorクラスのコンストラクタから参照するRoomクラスはエラーが起こらないのはなぜなのでしょうか。
おそらく初歩的な部分だと思うので恐縮ですが、よろしくお願いいたします。
言語 : C# version7.0
開発環境 : Microsoft Visual Studio 2019
「CS0122 : 'Program.Floor.Floor()'はアクセスできない保護レベルになっています」
該当のソースコード
C#
1using System; 2using System.Collections.Generic; 3 4class Program 5{ 6 static void Main(string[] args) 7 { 8 } 9 10 class Building 11 { 12 public List<Floor> Floors { get; set; } 13 14 Building() 15 { 16 Floors = new List<Floor>(); 17 for (int i = 0; i < 3; i++) 18 { 19 Floors.Add(new Floor()); ← 問題のエラーが起きる箇所 20 } 21 } 22 } 23 class Floor 24 { 25 public List<Room> Rooms { get; set; } 26 Floor() 27 { 28 Rooms = new List<Room>(); 29 for (int i = 0; i < 10; i++) 30 { 31 Rooms.Add(new Room()); ← ここは問題のエラーが起きない 32 } 33 } 34 } 35 class Room 36 { 37 public int Residents { get; set; } = 0; 38 } 39} 40
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/03 05:24