developer_RYO’s blog

スマホアプリやPCゲーム、音楽やイラストを自由気ままに作っている人の技術ログです

field type 型名 is less accessible than field の避け方

▪️問題点
変数の宣言箇所にfield type 型名 is less accessible than fieldっていうエラーが出た
出たのは、noteっていう変数のところ。

//譜面クラス
//入力タイミングと、音符のタイミングデータの結果を返す。
public class Music
{
	////////////////////////////////////////
	//データ構造
	
	protected Note[] note;
	
class Note
{
	/////////////////////////////////////////
	//データ
	
	//タイミング、サウンドタイプ、
	private float timing;
	private Sound sound;
	

▪️解決方法
Microsoftのサイトになんだか書かれていたので、参考にしました。
アクセシビリティ レベルの使用に関する制限事項 (C# リファレンス) | Microsoft Docs

直接基本クラスは、少なくともその派生クラスと同程度にアクセス可能である必要があります

僕の場合は派生クラスではないんですが、publicとかprivateとかをいじって、アクセスレベルってやつを合わせてあげるのが必要っぽいという認識だ。