编译器错误 CS1527
命名空间中定义的元素无法显式声明为 private、protected、protected internal 或 private protected。
命名空间中的类型声明可以具有 公共 或 内部 访问。 如果未指定任何可访问性,则默认设置为 内部 。
以下示例生成 CS1527:
C#
// CS1527.cs
namespace Sample
{
private class C1 {} // CS1527
protected class C2 {} // CS1527
protected internal class C3 {} // CS1527
private protected class C4 {} // CS1527
}
以下示例将生成 CS1527,因为当程序代码中没有显式声明命名空间时,所有类型声明均隐式存在于全局命名空间内。
C#
//cs1527_2.cs
using System;
protected class C4 {}
private struct S1 {}