다음을 통해 공유


컴파일러 오류 C2108

아래 첨자가 정수 형식이 아닙니다.

설명

배열 아래 첨자는 정수가 아닌 식입니다.

예시

값 형식의 포인터를 잘못 사용하여 this 형식의 기본 인덱서에 액세스하는 경우 C2108이 발생할 수 있습니다. 자세한 내용은 포인터의 의미 체계를 this 참조하세요.

다음 샘플에서는 C2108을 생성합니다.

// C2108.cpp
// compile with: /clr
using namespace System;

value struct B {
   property Double default[Double] {
      Double get(Double data) {
         return data*data;
      }
   }
   void Test() {
      Console::WriteLine("{0}", this[3.3]);   // C2108
      Console::WriteLine("{0}", this->default[3.3]);   // OK
   }
};

int main() {
   B ^ myb = gcnew B();
   myb->Test();
}