読者です 読者をやめる 読者になる 読者になる

developer_RYO’s blog

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

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

C#メモ

こんにちは。

題名の件で苦しんだので、メモしておきます。

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

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

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

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

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

まだまだ勉強が必要だ。