2011-10-21 2 views
3

모듈의 머리 부분에서 다양한 하위/함수에 사용할 전역 변수를 선언하고 싶습니다. 희미한 대 개인/공개

무엇

Dim x as stringPrivate x as string/Public x as string의 차이이며,

나는 다른 이상 일을 사용하는 경우?

+0

'Friend x as String'을 잊지 마세요. –

+0

이 [post] [1]은 더 좋은 대답을 가지고 있습니다. [1] : http://stackoverflow.com/questions/5401372/difference-between-dim-and-private-inside-a-vb-net-form – gonzobrains

답변

8

선언하고있는 변수 또는 개체의 범위를 개인 및 공용으로 제어합니다.

Private는 인스턴스

public에 액세스 할 어떤 상대 모듈/클래스 /의 구성원이 액세스하는 어떤 모듈/클래스 /와 같은 범위에서 아무것도 수있게됩니다.

Dim은 작업하는 항목에 따라 공개 또는 비공개로 기본 설정됩니다. 예를 들어 클래스는 기본적으로 비공개로 설정됩니다. 캡슐화와 OOP에 대한 더 나은 느낌을 얻기 위해이 글을 읽는 것이 좋습니다.

+0

예,하지만 경우 차이가 무엇 희미한 빛을 사용합니까? – gonzobrains

+0

답변을 다시 읽으십시오. 저는 Dim 또는 Dimension이 여러분이 구조체에 있는지 아니면 클래스에 있는지에 따라 공개 또는 비공개로 범위를 설정한다고 말했습니다. – MGZero

+0

dim의 기본값에 대한 자세한 내용은 – mattumotu

0

그들은 서로 다르지만 관련이 있습니다.

Dim Statement (Visual Basic) [MSDN]는 말해 준다 :

[어둡게]를 선언하고, 하나 개 이상의 변수 저장 공간을 할당한다.

희미한 키워드는 선택 사항이며 다음과 같은 수정자를 지정하면 일반적으로 생략 : 공중, 보호, 친구, 보호 친구, 개인, 공유, 그림자, 정적, 읽기 전용, 또는 WithEvents.

Access Levels in Visual Basic [MSDN]

은 우리에게 알려줍니다 :

개인 (및 공공, 보호, 친구, 보호 친구) 액세스 수정은 '무엇을 코드하는 것은 그것을 읽거나 쓸 수있는 권한이있다.'지정된다

및 모듈 수준에서

, 모든 액세스 수준 키워드없이 희미한 문은 개인 선언하는 것과 같습니다. 그러나 Private 키워드를 사용하면 코드를 읽고 해석하기가 더 쉬워집니다.

정도로 Private x As String는 (사용자가 입력 한 경우, 어둡게을 제거이 비주얼 스튜디오 있지만)

Dim x As String (이것은 Public x As String에 상당) 구조를 제외 Private x As String 동등하다 Dim Private x As String 및 인터페이스의 상당 변수를 선언 할 수 없습니다. - Declaration Contexts and Default Access Levels (Visual Basic) [MSDN]

관련 문제