멍멍이네 블로그

Invalid rank specifier: expected `,' or `]'

 

에러 원인. C# 2차원 배열.

string[][] a;

a = new string[1][1];

수정(해결)

a = new string[1][];

a[1] = new string[1]; //-> a[1][1];

 

 

p.s.

응용

a = new string[2][];

a[0] = new string[10];

a[1] = new string[5];

Error building Player: CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details.

 

에러 원인

안드로이드-이클립스에서 짠 네이티브 코드에서 에러가 난 것으로 추정.

정확히는 이클립스에서 네이티브코드로 플러그인을 만들던 중 필요 이상의 기능(인앱결제)을 넣는 바람에 생긴 에러.

추정하기로는 블로그에서 썼듯이 V2버전은 서비스 종료했을 것인데 사용했다. 밑에 세부 에러를 보면 인앱빌링에서 클래스를 찾을수 없다라던지.. 인앱에 관련된 글자들이 가득함.

 

해결방법

우선은 인앱빌링을 삭제. 후에 V3로 바꾸던지 한다음 테스트를 해야 정확할 것 같은데.. 시간이 없어서 자세한 사항은 패스!!

 

p.s.예전엔 System32에 java.exe javaw.exe javaws.exe 파일을 넣으면 된다했는데.. 저도 그당시는 그렇게 고쳤는데, 지금은 System32나 System 혹은 SysWOW64(64비트용폴더.. 이름이 정확히 기억안남)에 위 해당 3개 파일은 존재하지 않음. 그리고 그걸로 해결되지 않음(파일을 찾아서 넣었어도 문제가 되지 않아서, 에러를 자세히 봄으로써 고침ㅋ)

오버라이딩( = 함수 재정의)

- 함수를 입맛에 맞게 재정의 해서 사용함.

주로 추상클래스로 만들어서 사용함.

 

오버로딩( = 함수 중복)

- 함수를 중복(이름 동일)하게 정의함(매게변수만 다르게)

  매게변수가 다를 경우 다른 메소드로 인식함.

ex)

public void text(int a){

}

 

public void text(int a, int b){

}

 

*추상클래스 = 함수명으로 메소드를 만들 되 함수를 정의하지 않음으로 사용할 수 없는 메소드를 정의하지만,  나중에 정의가 가능하도록 만듬. 주로 상속 등에 사용됨.