我的Visual Studio 2010中找到参数类型错误的可访问性不一致,当我编译此C#代码:
class Program
{
class BaseClass
{
public class NestedClass
{
}
}
public static bool Function1(BaseClass.NestedClass obj)
{
return true;
}
static void Main(string[] args)
{
Function1(new BaseClass.NestedClass());
new BaseClass.NestedClass();
Console.ReadLine();
}
}
但是当我的评论功能1它的工作原理。
class Program
{
class BaseClass
{
public class NestedClass
{
}
}
//public static bool Function1(BaseClass.NestedClass obj)
//{
// return true;
//}
static void Main(string[] args)
{
//Function1(new BaseClass.NestedClass());
new BaseClass.NestedClass();
Console.ReadLine();
}
}
为什么NestedClass可以创建,但不能参数?
编辑:对不起,我是不是我的问题相当精确。 上面我试图重新在控制台应用程序的问题,但在我的项目,我有类等结构:
class BaseClass
{
public class NestedClass
{
}
}
public class OtherClass
{
public void Function1(BaseClass.NestedClass param)
{
var newObj = new BaseClass.NestedClass();
}
}
PS:设置BaseClass的公共真正解决我的问题。 现在,由于答案和意见,我明白,这是因为公共功能1比内部(默认)BaseClass的更大的便利。 但我不明白为什么我没有错误创建新NestedClass对象?