2010-08-03 2 views
0

후기 바인딩이 허용되지 않으며 그것이 우리가 원하는 방식입니다.옵션 엄격한 질문

은 우리의 프로그램은 LAN 또는 인터넷에서 실행되고 있는지 여부에 따라, 우리는 두 가지 유형 중 하나로 객체를 어둡게해야합니다. if ... then 문을 사용하여 LAN 또는 인터넷에서 실행 중인지 확인합니다. 우리는 ... 경우 다음 문 안에 우리의 객체를 선언 할 때

, 우리는 잘못된 범위에서 선언하고 객체를 사용할 수 없습니다. 'Object'유형으로 선언하고 if ... then 문에서 DirectCast를 사용하면 지연 바인딩 오류가 발생합니다.

Option Strict를 끄지 않고 어떻게이 문제를 해결할 수 있습니까?

답변

2

저는 vb.net을 사용하지 않았습니다. 그래서 소스를 고려하십시오. 그러나 각각의 타입을 다른 타입의 서브 클래스로 선언 할 수는 없으며 그 슈퍼 클래스 타입을 객체의 선언 된 타입으로 가질 수 있습니까?

0

필자는 변수 초기화에 Object 클래스를 사용하려고 할 때 본질적으로 내가하는 일이라는 것을 알고 있습니다. 그러나 DirectCast를 사용하여 필요한 유형으로 범위를 좁히기 위해 지연 바인딩 오류가 발생합니다.

+0

Carl이 [상속] (http://support.microsoft.com/kb/307222)을 사용하는 것에 대해 이야기하고 있습니다. 전혀 캐스팅하지 않아도됩니다. 수퍼 클래스 (상속받은 클래스)에 필요한 모든 기능을 넣을 수는 없습니까? – MarkJ