C#中参数类型“”比方法“”的访问性低的问题
2015-07-01 15:50
176 查看
今天再做《C#入门经典》第12章的第一个例子时出现了这样的错误:
错误 4 可访问性不一致: 参数类型“System.Collections.Generic.IEnumerable<ConsoleApplication1.Vector>”比方法“ConsoleApplication1.Vectors.Vectors(System.Collections.Generic.IEnumerable<ConsoleApplication1.Vector>)”的可访问性低 D:\cspj\cs\20150701\ConsoleApplication1\ConsoleApplication1\Vectors.cs
14 16 ConsoleApplication1
后来发现是我定义的静态类可访问等级要比调用的类的可访问等级高,这是原先出错的定义:
class Vector
{
///此处省略
///
}
public static class VectorDelegates
{
public static int Compare(Vector x, Vector y)
{
///此处省略
///
}
public static bool TopRightQuadrant(Vector target)
{
///此处省略
///
}
}
明显静态类VectorDelegates的可访问级别是static,而Vector的可访问级别由于疏忽没有定义,默认的是private,而VectorDelegates 的Compare和TopRightQuadrant方法的传递参数都是Vector类,public级别的类调用private的参数显然可能会出现访问不到的情况,所以会出现错误。
这里将Vector类定义改一下就好了,如下:
public class Vector
{
///此处省略
///
}
参考资料:https://msdn.microsoft.com/zh-cn/library/ba0a1yw2%28v=VS.80%29.aspx
错误 4 可访问性不一致: 参数类型“System.Collections.Generic.IEnumerable<ConsoleApplication1.Vector>”比方法“ConsoleApplication1.Vectors.Vectors(System.Collections.Generic.IEnumerable<ConsoleApplication1.Vector>)”的可访问性低 D:\cspj\cs\20150701\ConsoleApplication1\ConsoleApplication1\Vectors.cs
14 16 ConsoleApplication1
后来发现是我定义的静态类可访问等级要比调用的类的可访问等级高,这是原先出错的定义:
class Vector
{
///此处省略
///
}
public static class VectorDelegates
{
public static int Compare(Vector x, Vector y)
{
///此处省略
///
}
public static bool TopRightQuadrant(Vector target)
{
///此处省略
///
}
}
明显静态类VectorDelegates的可访问级别是static,而Vector的可访问级别由于疏忽没有定义,默认的是private,而VectorDelegates 的Compare和TopRightQuadrant方法的传递参数都是Vector类,public级别的类调用private的参数显然可能会出现访问不到的情况,所以会出现错误。
这里将Vector类定义改一下就好了,如下:
public class Vector
{
///此处省略
///
}
参考资料:https://msdn.microsoft.com/zh-cn/library/ba0a1yw2%28v=VS.80%29.aspx
相关文章推荐
- .NET: C#: System.Diagnostics
- c# DataGridView控件的使用补充--属性
- C#中保留2位小数
- C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 – 员工离职管理
- 两点C#的propertyGrid的使用心得【转】
- C#中String.Trim方法
- C# 自定义泛型
- C#获取上个月第一天和最后一天日期的方法
- c#中的static
- C# .Net计算函数执行的时间
- C# 浅谈泛型存在的意义
- 深入理解C#的装箱和拆箱
- C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 检查版本升级、检查登录超时
- C#数组
- c#开发_Dev的关于XtraGrid的使用(GridControl小结)
- c# Deflate压缩与解压缩函数
- C#软件winform程序安装包制作及卸载程序制作
- C# Deflate、GZip压缩与解压缩
- C# post数据时 出现如下错误: System.Net.WebException: 操作超时
- C# Deflate 压缩与解压缩