이 문서에서는 다음 컴파일러 오류를 다룹니다.
- CS0022: [] 내부의 인덱스 개수가 잘못되었습니다. 'number'개가 필요합니다.
-
CS0178: 잘못된 순위 지정자: '
,' 또는 ']'가 필요합니다. - CS0248: 음수 크기의 배열을 만들 수 없습니다.
-
CS0270: 변수 선언에서 배열 크기를 지정할 수 없습니다('
new' 식으로 초기화하세요). - CS0611: 배열 요소는 형식일 수 없습니다.
- CS0623: 배열 이니셜라이저는 변수 또는 필드 이니셜라이저에서만 사용할 수 있습니다. 대신 새 식을 사용해 봅니다.
- CS0650: 배열 선언자가 잘못되었습니다. 관리되는 배열을 선언하려면 차수 지정자가 변수 식별자보다 앞에 와야 합니다. 고정 크기 버퍼 필드를 선언하려면 fixed 키워드를 필드 형식 앞에 사용하세요.
- CS0719: 배열 요소는 정적 형식일 수 없습니다.
- CS0747: 잘못된 이니셜라이저 멤버 선언자입니다.
- CS0820: 암시적으로 형식이 할당된 로컬에 배열 이니셜라이저를 할당할 수 없습니다.
- CS0826: 암시적으로 형식이 지정된 배열에 가장 적합한 형식을 찾을 수 없습니다.
- CS0846: 중첩 배열 이니셜라이저가 필요합니다.
- CS1063: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
-
CS1552: 배열 형식 지정자
[]은 매개 변수 이름 앞에 나타나야 합니다. - CS1586: 배열 만들기에는 배열 크기 또는 배열 이니셜라이저가 있어야 합니다.
- CS1920: 요소 이니셜라이저는 비워둘 수 없습니다.
-
CS1921: 최상의 오버로드된 메서드 일치에 이니셜라이저 요소에 대한 서명이 잘못되었습니다. 초기화 가능한
Add는 액세스 가능한 인스턴스 메서드여야 합니다. - CS1925: 컬렉션 이니셜라이저로 'type' 형식의 개체를 초기화할 수 없습니다.
- CS1950: 컬렉션 이니셜라이저에 가장 잘 오버로드된 Add 메서드에는 몇 가지 잘못된 인수가 있습니다.
-
CS1954: 컬렉션 이니셜라이저 요소에 대해 가장 잘 일치하는 오버로드된 메서드를 사용할 수 없습니다. 컬렉션 이니셜라이저 '
Add' 메서드는ref또는out매개 변수를 가질 수 없습니다. - CS9174: 형식이 생성 가능하지 않기 때문에 컬렉션 리터럴로 형식을 초기화할 수 없습니다.
- CS9176: 컬렉션 리터럴에 대한 대상 유형이 없습니다.
- CS9185: CollectionBuilderAttribute 빌더 형식은 일반이 아닌 클래스 또는 구조체여야 합니다.
- CS9186: CollectionBuilderAttribute 메서드 이름이 잘못되었습니다.
-
CS9187: 예상 서명이 있는 액세스 가능한 메서드를 찾을 수 없습니다.
ReadOnlySpan<T>형식의 단일 매개 변수가 있는 정적 메서드입니다. 올바른 반환 형식 - CS9188: 형식에 CollectionBuilderAttribute가 있지만 요소 형식이 없습니다.
- CS9203: 이 형식의 컬렉션 식은 현재 범위 외부에 노출될 수 있으므로 이 컨텍스트에서 사용할 수 없습니다.
- CS9210: 이 버전의 System.Collections.Immutable.ImmutableArray<T>는 컬렉션 식과 함께 사용할 수 없습니다.
-
CS9212: '
..type'은 'member'에 대한 공용 인스턴스 또는 확장 정의를 포함하지 않으므로 'type' 형식의 변수에서 '' 분산 연산자를 사용할 수 없습니다. - CS9213: 컬렉션 식 대상 'type'에 요소 형식이 없습니다.
- CS9214: 컬렉션 식 형식에는 인수 없이 호출할 수 있는 적용 가능한 생성자가 있어야 합니다.
- CS9215: 컬렉션 식 형식 'type'에는 단일 인수로 호출할 수 있는 인스턴스 또는 확장 메서드 'Add'가 있어야 합니다.
- CS9222: 컬렉션 이니셜라이저는 컬렉션 'type' 인스턴스화의 무한 체인을 생성합니다.
- CS9332: catch 절의 필터 식에서 '..' 스프레드 연산자를 사용할 수 없습니다.
- CS9354: 'with(...)' 요소가 첫 번째 요소여야 합니다.
- CS9355: 'with(...)' 요소는 'type' 형식에 대해 지원되지 않습니다.
- CS9356: 'with(...)' 요소 인수는 동적일 수 없습니다.
- CS9357: 읽기 전용 인터페이스의 'with(...)' 요소는 비어 있어야 합니다(있는 경우).
- CS9358: 이 컬렉션의 요소 형식은 ref 구조체 또는 ref 구조체를 허용하는 형식 매개 변수가 아닐 수 있습니다.
- CS9359: 메서드 'method'에 대한 오버로드가 'number' 'with(...)' 요소 인수를 사용하지 않음
또한 이 문서에서는 다음 경고를 다룹니다.
- CS1062: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
- CS1064: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
- CS3007: 명명되지 않은 배열 형식만 다른 오버로드된 'method' 메서드는 CLS 규격이 아닙니다.
- CS3016: 특성 인수인 배열은 CLS를 준수하지 않습니다.
- CS0251: 음수 인덱스를 사용하여 배열을 인덱싱했습니다. 배열 인덱스는 항상 0부터 시작합니다.
- CS9208: 컬렉션 식으로 인해 예기치 않은 힙 할당이 발생할 수 있습니다. 명시적으로 배열을 만든 다음 최종 형식으로 변환하여 할당을 명시적으로 만드는 것이 좋습니다.
-
CS9209: '
..' 스프레드 사용으로 인해 컬렉션 식에서 예기치 않은 힙 할당이 발생할 수 있습니다. 명시적으로 배열을 만든 다음 최종 형식으로 변환하여 할당을 명시적으로 만드는 것이 좋습니다. - CS9332: catch 절의 필터 식에서 '..' 스프레드 연산자를 사용할 수 없습니다.
잘못된 배열 요소 액세스
- CS0022: [] 내부의 인덱스 개수가 잘못되었습니다. 'number'개가 필요합니다.
- CS0251: 음수 인덱스를 사용하여 배열을 인덱싱했습니다. 배열 인덱스는 항상 0부터 시작합니다.
배열 요소에 올바르게 액세스하려면 다음 인덱싱 규칙을 따릅니다. 자세한 내용은 배열을 참조하세요.
- 선언된 차원과 동일한 수의 인덱스를 지정합니다(CS0022). 1차원 배열에는 하나의 인덱스가 필요합니다. 3차원 배열에는 3개의 인덱스가 필요합니다.
- 배열 인덱스에는 음수가 아닌 정수만 사용합니다(CS0251). 배열 인덱스는 항상 0부터 시작합니다.
잘못된 컬렉션 이니셜라이저
- CS0747: 잘못된 이니셜라이저 멤버 선언자입니다.
- CS1920: 요소 이니셜라이저는 비워둘 수 없습니다.
-
CS1921: 최상의 오버로드된 메서드 일치에 이니셜라이저 요소에 대한 서명이 잘못되었습니다. 초기화 가능한
Add는 액세스 가능한 인스턴스 메서드여야 합니다. - CS1922: 'type'이 'System.Collections.IEnumerable'을 구현하지 않으므로 컬렉션 이니셜라이저를 사용하여 'type' 형식을 초기화할 수 없습니다.
- CS1925: 컬렉션 이니셜라이저로 'type' 형식의 개체를 초기화할 수 없습니다.
- CS1927: 경고: 어셈블리에만 적용되므로 모듈에 대한 /win32manifest 무시
- CS1950: 컬렉션 이니셜라이저에 가장 잘 오버로드된 Add 메서드에는 몇 가지 잘못된 인수가 있습니다.
-
CS1954: 컬렉션 이니셜라이저 요소에 대해 가장 잘 일치하는 오버로드된 메서드를 사용할 수 없습니다. 컬렉션 이니셜라이저 '
Add' 메서드는ref또는out매개 변수를 가질 수 없습니다. - CS9174: 형식이 생성 가능하지 않기 때문에 컬렉션 리터럴로 형식을 초기화할 수 없습니다.
- CS9176: 컬렉션 리터럴에 대한 대상 유형이 없습니다.
- CS9203: 이 형식의 컬렉션 식은 현재 범위 외부에 노출될 수 있으므로 이 컨텍스트에서 사용할 수 없습니다.
- CS9210: 이 버전의 System.Collections.Immutable.ImmutableArray<T> 컬렉션 식에는 사용할 수 없습니다.
-
CS9212: '
..type'은 'member'에 대한 공용 인스턴스 또는 확장 정의를 포함하지 않으므로 'type' 형식의 변수에서 '' 분산 연산자를 사용할 수 없습니다. - CS9213: 컬렉션 식 대상 'type'에 요소 형식이 없습니다.
- CS9214: 컬렉션 식 형식에는 인수 없이 호출할 수 있는 적용 가능한 생성자가 있어야 합니다.
- CS9215: 컬렉션 식 형식 'type'에는 단일 인수로 호출할 수 있는 인스턴스 또는 확장 메서드 'Add'가 있어야 합니다.
- CS9222: 컬렉션 이니셜라이저는 컬렉션 'type' 인스턴스화의 무한 체인을 생성합니다.
- CS9332: catch 절의 필터 식에서 '..' 스프레드 연산자를 사용할 수 없습니다.
- CS9354: 'with(...)' 요소가 첫 번째 요소여야 합니다.
- CS9355: 'with(...)' 요소는 'type' 형식에 대해 지원되지 않습니다.
- CS9356: 'with(...)' 요소 인수는 동적일 수 없습니다.
- CS9357: 읽기 전용 인터페이스의 'with(...)' 요소는 비어 있어야 합니다(있는 경우).
- CS9358: 이 컬렉션의 요소 형식은 ref 구조체 또는 ref 구조체를 허용하는 형식 매개 변수가 아닐 수 있습니다.
- CS9359: 메서드 'method'에 대한 오버로드가 'number' 'with(...)' 요소 인수를 사용하지 않음
컴파일러에서 다음 경고를 생성할 수도 있습니다.
- CS1062: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
- CS1063: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
- CS1064: 컬렉션 이니셜라이저 요소에 가장 적합한 오버로드된 Add 메서드는 사용되지 않습니다.
- CS9208: 컬렉션 식으로 인해 예기치 않은 힙 할당이 발생할 수 있습니다. 명시적으로 배열을 만든 다음 최종 형식으로 변환하여 할당을 명시적으로 만드는 것이 좋습니다.
-
CS9209: '
..' 스프레드 사용으로 인해 컬렉션 식에서 예기치 않은 힙 할당이 발생할 수 있습니다. 명시적으로 배열을 만든 다음 최종 형식으로 변환하여 할당을 명시적으로 만드는 것이 좋습니다.
유효한 컬렉션 이니셜라이저를 만들려면 다음 규칙을 따릅니다. 자세한 내용은 컬렉션 식을 참조하세요.
- 동일한 이니셜라이저(CS0747)에 요소 추가와 속성 초기화를 혼합하지 마세요.
- 중괄호가 있는 컬렉션 이니셜라이저에 하나 이상의 요소를 포함합니다(CS1920).
- 컬렉션 형식이 구현되는지 확인합니다
IEnumerable(CS1922). - 컬렉션 형식(CS1925)에서만 컬렉션 이니셜라이저를 사용합니다.
- 메서드에
Add액세스할 수 있는지, 요소 타입과 일치하는 하나의 매개변수를 받는지, 그리고ref또는out한정자를 사용하지 않는지(CS1921, CS1954) 확인하십시오. - 모호한
Add메서드 오버로드를 해결합니다(CS1950). - 컴파일러가 유추할 수 없는 경우 컬렉션 식에 대한 명시적 대상 형식을 제공합니다(CS9176, CS9213).
- 매개 변수가 없는 생성자(CS9174, CS9214)를 사용하여 컬렉션 형식을 생성할 수 있는지 확인합니다.
- 컬렉션 식에서 참조 보안을 위반할 수 있는
ref struct형식을 사용하지 마세요(CS9203). - 컬렉션 식에 대한
ImmutableArray호환 가능한 런타임 버전으로 업데이트합니다 (CS9210). - 스프레드 연산자 지원(
GetEnumerator)에 대한 열거형 패턴(예: )을 구현합니다. - 컬렉션 초기화에서 순환 종속성을 방지합니다(CS9222).
- catch 절 필터 식에서 스프레드 연산자를 사용하지 마세요(CS9332).
-
with(...)컬렉션 식에서 요소를 먼저 배치합니다(CS9354). - 컬렉션 식 인수(
with(...))를 지원하는 형식에서만 요소를 사용합니다. - 요소에서 동적 인수를
with(...)사용하지 마세요(CS9356). - 읽기 전용 인터페이스 형식(CS9357)에는 빈
with()를 사용하십시오. - ref 구조체 형식을 지원하지 않는 컬렉션의 요소 형식으로 사용하지 마세요(CS9358).
- 인수의 수를
with(...)사용 가능한 생성자 오버로드(CS9359)와 일치시키십시오.
잘못된 배열 순위
-
CS0178: 잘못된 순위 지정자: '
,' 또는 ']'가 필요합니다. - CS0650: 배열 선언자가 잘못되었습니다. 관리되는 배열을 선언하려면 차수 지정자가 변수 식별자보다 앞에 와야 합니다. 고정 크기 버퍼 필드를 선언하려면 fixed 키워드를 필드 형식 앞에 사용하세요.
-
CS1552: 배열 형식 지정자
[]은 매개 변수 이름 앞에 나타나야 합니다.
배열을 올바르게 선언하려면 적절한 구문 순서를 따릅니다. 자세한 내용은 배열 이니셜라이저에 대한 배열 및 C# 언어 사양 섹션을 참조하세요.
배열 선언은 순서대로 다음 토큰으로 구성됩니다.
- 배열 요소의 형식(예:
int,string또는SomeClassType)입니다. - 여러 차원에 대한 배열 대괄호는 선택적으로 쉼표를 포함할 수 있습니다.
- 변수 이름입니다.
배열 차원을 지정할 때 다음을 사용할 수 있습니다.
- 중괄호(
{및}) 안의 여러 요소 - 빈 괄호
- 대괄호로 묶인 하나 이상의 쉼표
다음 예제에서는 유효한 배열 선언을 보여 줍니다.
int[] anArrayOfIntegers;
string[,,] threeDimensionalStringArray;
잘못된 배열 길이
- CS0248: 음수 크기의 배열을 만들 수 없습니다.
- CS0270: 변수 선언에서 배열 크기를 지정할 수 없습니다('new' 식을 사용하여 초기화해 보세요).
- CS1586: 배열 만들기에는 배열 크기 또는 배열 이니셜라이저가 있어야 합니다.
길이가 유효한 배열을 만들려면 선언이 아닌 초기화 중에 크기를 지정합니다. 자세한 내용은 배열을 참조하세요.
- 선언이 아닌 초기화의 일부로 배열 길이를 지정합니다(CS0270).
- 배열 차원에는 양의 정수만 사용합니다(CS0248).
-
new표현식에 크기를 제공하거나 배열 이니셜라이저(CS1586)를 사용하십시오.
다음 예에서는 두 가지 메커니즘을 모두 보여 줍니다.
int[] fiveIntegers = new int[5];
string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
잘못된 요소 형식
- CS0611: 배열 요소는 'type' 형식일 수 없습니다.
- CS0719: 배열 요소는 정적 형식일 수 없습니다.
- CS0820: 암시적으로 형식이 할당된 로컬에 배열 이니셜라이저를 할당할 수 없습니다.
- CS0826: 암시적으로 형식화된 배열에 가장 적합한 형식이 없습니다.
올바른 요소 형식의 배열을 사용하려면 다음 형식 제한을 따릅니다. 자세한 내용은 암시적으로 형식화된 지역 변수 및 가장 일반적인 형식을 참조하세요.
- 배열 요소 형식과 같이 System.TypedReference 제한된 형식을 System.ArgIterator 사용하지 마세요(CS0611).
- 인스턴스를 만들 수 없으므로 클래스를 배열 요소 형식으로 사용하지
static마세요(CS0719). - 식을 사용하여 암시적으로 형식화된 배열을
new초기화합니다(CS0820). - 암시적으로 형식화된 배열 이니셜라이저의 모든 요소에 가장 일반적인 형식(CS0826)이 있는지 확인합니다.
다음 예제에서는 암시적으로 형식화된 배열을 선언하는 방법을 보여 줍니다.
var implicitType = new[] { 1, 2, 3 };
char c = 'c';
short s1 = 0;
short s2 = -0;
short s3 = 1;
short s4 = -1;
// common type is "int"
var commonType = new[] { s1, s2, s3, s4, c, 1 };
가장 일반적인 형식을 보장하려면 다음 기술 중 어느 것을 사용하세요.
- 배열에 명시적 형식을 지정합니다.
- 모든 배열 요소에 동일한 형식을 지정합니다.
- 문제를 일으킬 수 있는 요소에 대해 명시적 형 변환을 제공합니다.
잘못된 배열 이니셜라이저
- CS0623: 배열 이니셜라이저는 변수 또는 필드 이니셜라이저에서만 사용할 수 있습니다. 대신 새 식을 사용해 봅니다.
- CS0846: 중첩 배열 이니셜라이저가 필요합니다.
- CS1925: 컬렉션 이니셜라이저로 'type' 형식의 개체를 초기화할 수 없습니다.
이러한 오류는 잘못된 배열 이니셜라이저 구문을 나타냅니다. 자세한 내용은 배열을 참조하세요.
유효한 배열 이니셜라이저를 만들려면 다음을 수행합니다.
- 변수 또는 필드 선언(CS0623)에서만 배열 이니셜라이저를 사용합니다. 다른 컨텍스트에서
new식을 사용하십시오. -
{및}와 같은 요소 또는 자식 배열(CS0846) 주위에 중괄호의 균형을 맞춥니다. - 초기화 식이 들쭉날쭉한 배열 초기화의 배열 수와 일치하는지 확인합니다.
- 컬렉션 이니셜라이저는 배열이나 다른 형식(CS1925)이 아닌 컬렉션 형식에서만 사용합니다.
잘못된 컬렉션 작성기
- CS9175: 식 트리에 컬렉션 식이 포함될 수 없습니다.
- CS9177: 'CollectionBuilderAttribute' 작성기 메서드 반환 형식은 'betterness'에 사용되는 컬렉션 형식과 일치해야 합니다.
- CS9178: 자연 형식 'type'에 대한 대상 형식이 없습니다.
- CS9179: 컬렉션 식 형식에는 인수 없이 호출할 수 있는 해당 생성자가 있어야 합니다.
- CS9180: 'CollectionBuilderAttribute' 작성기 메서드는 정적 메서드여야 합니다.
- CS9181: 'CollectionBuilderAttribute' 작성기 메서드 매개 변수 형식은 'ReadOnlySpan<{0}>' 매개 변수와 일치해야 합니다.
- CS9182: 잘못된 'CollectionBuilderAttribute'입니다. 작성기 형식 ''{0}에서 일치하는 '{1}' 메서드를 찾을 수 없습니다.
- CS9183: 'CollectionBuilderAttribute' 메서드 반환 형식은 'type'으로 사용할 수 있는 비 추상 인터페이스 형식이어야 합니다.
- CS9185: 정적 형식을 형식 인수로 사용할 수 없습니다.
-
CS9186:
CollectionBuilderAttribute메서드 이름이 잘못되었습니다. - CS9187: 'ReadOnlySpan<{0}>' 형식의 단일 매개 변수 및 '{1}' 반환 형식을 갖는 정적 메서드로 된 예상 시그니처의 액세스 가능한 'Create' 메서드를 찾을 수 없습니다.
- CS9188: 'scoped'는 컬렉션 식 형식 매개 변수에서 한정자로 사용할 수 없습니다.
- CS9190: 'CollectionBuilderAttribute' 메서드 'builderMethod'는 제네릭이므로 적용할 수 없습니다.
- CS9192: 인라인 배열 변환은 컬렉션 식과 함께 사용할 수 없습니다.
- CS9193: 'ref' 키워드를 사용하여 인수 'argument'를 전달할 수 없습니다.
- CS9194: 'out' 키워드를 사용하여 인수 'argument'를 전달할 수 없습니다.
- CS9195: 'argument' 인수를 'in' 키워드와 함께 전달할 수 없습니다.
- CS9196: 기능 '컬렉션 식'은 C# 'version'에서 사용할 수 없습니다. 언어 버전 'requiredVersion' 이상 버전을 사용하세요.
- CS9197: 기능 '인라인 배열'은 C# '버전'에서 사용할 수 없습니다. 언어 버전 'requiredVersion' 이상 버전을 사용하세요.
- CS9198: 'async 및 iterator 메서드에서의 ref 및 unsafe' 기능은 C# 'version'에서 사용할 수 없습니다. 언어 버전 'requiredVersion' 이상을 사용하세요.
- CS9199: 기능 '컬렉션 식'은 C# 'version'에서 사용할 수 없습니다. 언어 버전 'requiredVersion' 이상 버전을 사용하세요.
- CS9202: 기능 'ref readonly parameters'는 C# 'version'에서 사용할 수 없습니다. 언어 버전 'requiredVersion' 이상 버전을 사용하세요.
- CS9208: 인라인 배열 액세스에서 'nameof' 연산자를 사용할 수 없습니다.
- CS9209: 참조 반환 속성 'property'를 값 인수로 사용할 수 없습니다.
- CS9211: 식은 참조로 할당되므로 'type' 형식이어야 합니다.
- CS9212: 컬렉션 식을 고정 문의 값으로 사용할 수 없습니다.
- CS9217: 'ref' 로컬은 'await' 또는 'yield' 경계를 통해 보존할 수 없습니다.
- CS9218: 'paramName'은 ref 구조체이며 매개 변수의 형식일 수 없습니다.
- CS9221: 'type' 형식은 제네릭 형식 또는 메서드 'member'에서 'parameter' 매개 변수로 사용하기 위해 ref 구조체를 허용하는 ref 구조체 또는 형식 매개 변수가 아닐 수 있습니다.
- CS9223: 'ref' 필드가 포함된 구조체는 컬렉션 식에서 사용할 수 없습니다.
- CS9228: ref 구조체의 변수가 아닌 선언은 허용되지 않습니다.
- CS9232: 부분 메서드 선언에는 서명 차이가 있습니다.
- CS9233: 'file' 한정자는 컴파일 단위의 최상위 수준에 정의된 형식에서만 사용할 수 있습니다.
컬렉션 작성기 특성을 사용하여 컬렉션 식을 올바르게 만들려면 다음 요구 사항을 따릅니다. 자세한 내용은 컬렉션 식을 참조하세요.
- 대상 형식에 지원하는 반복 형식이 있는지 확인합니다
foreach(CS9188). - 제네릭 형식을 컬렉션 작성기 형식으로 사용하지 마세요(CS9185).
- 지정된
CollectionBuilderAttribute메서드 이름이 유효한지 확인합니다(CS9186). - 필수 서명과 일치하는 정적 메서드에만 적용
CollectionBuilderAttribute: 컬렉션 형식을 반환하고 요소 형식(ReadOnlySpan<T>,T, CS9183, CS9187, CS9190)과 일치하는 매개 변수 를 사용합니다. - 반환 형식이 추상 또는 인터페이스(CS9177, CS9183)와 일치하고 일치하지 않는지 확인합니다.
- 컬렉션 식에서 ref 필드가 있는 ref 구조체 또는 형식을 사용하지 마세요(CS9218, CS9221, CS9223, CS9228).
- 식 트리에서 컬렉션 식을 사용하지 마세요(CS9175).
- 컬렉션 식 및 관련 기능(CS9196, CS9197, CS9198, CS9199, CS9202)에 올바른 언어 버전을 사용합니다.
공통 언어 사양 경고
- CS3007: 명명되지 않은 배열 형식만 다른 오버로드된 'method' 메서드는 CLS 규격이 아닙니다.
- CS3016: 특성 인수로서의 배열은 CLS를 준수하지 않습니다.
배열을 사용하여 CLS 규격 코드를 작성하려면 다음 지침을 따릅니다. 자세한 내용은 언어 독립성(Language Independence)을 참조하세요.
- 배열 요소 형식에서만 다른 오버로드된 메서드를 만들지 마세요(CS3007).
- 배열을 특성 인수로 사용하지 마세요(CS3016).
CS3007은 오버로드된 메서드에서 인수로 가변 배열을 사용하고 메서드 시그니처에서 배열의 요소 형식만 다른 경우에 발생합니다. 이 오류를 방지하려면 가변 배열 대신 직사각형 배열을 사용하는 것이 좋습니다. 또는 CLS 규정 준수가 필요하지 않은 경우 CLSCompliantAttribute 특성을 제거합니다. CLS 규격에 대한 자세한 내용은 언어 독립성 및 언어 독립적 구성 요소를 참조하세요.
CS3016은 배열을 특성에 전달하는 것이 CLS(공용 언어 사양)를 준수하지 않음을 나타냅니다. CLS 규격에 대한 자세한 내용은 언어 독립성 및 언어 독립적 구성 요소를 참조하세요.
.NET