2011-10-03 114 views
4

我正在參加Visual Basic 2010課程,我試圖掌握這個稱爲標誌的新術語。我有點理解它與布爾條件有關。我不太明白旗子是什麼。我使用術語標誌來看它的引用。我知道當布爾型,條件觸發一個標誌時它有事情要做。但是什麼是國旗。你如何識別它?有人能給我一個例子。什麼是布爾標誌

+0

你在說Enum標誌屬性嗎? – CharithJ

+1

參見:[http://en.wikipedia.org/wiki/Flag_(computing)](http://en.wikipedia.org/wiki/Flag_%28computing%29) –

回答

7

一般情況下,「旗」是一個真/假條件的另一種說法。

它可能在更具體的上下文中有更具體的含義。例如,CPU可能會保留「算術標誌」,每個標誌表示前一次算術操作導致的真/假條件。例如,如果前面的操作是「ADD」,那麼標誌將指示添加的結果是零,小於零還是大於零。

我相信這個術語來自標誌,用來表示一個走/不走的情況,就像鐵路的一個旗幟人員,指示火車是否安全繼續行駛。

2

由於BOOL只有2個結果,無論是TRUE還是FALSE,您都可以聽到這一點。如果滿足條件,在決策過程中使用BOOL是一種簡單的方法來「標記」某個結果。

一個例子可以是:

if ($x == TRUE) { 
// DO THIS 
{ 
else { 
//Flag not tripped, DO THIS 
} 
+0

-1:這是VB.NET,不是任何語言這是什麼(PHP的?) –

+1

正確的PHP,我不嘲笑.NET只是試圖給一個非常基本的例子都可以理解 – xXPhenom22Xx

+0

這可能是一個更吸引人的線程從MSDN網站使用VB.net和BOOLEAN .. 。希望這可以幫助 http://social.msdn.microsoft.com/Forums/en-CA/vblanguage/thread/73ba02b8-573a-4fce-a2b4-a5c3063c6cfd – xXPhenom22Xx

0

您可以使用bitwise operations。它可以用來將32個布爾值打包成一個整數。這裏有一個例子:

Dim flags As Integer 
Const ADMINISTRATOR = 1 
Const USER = 2 
Const BLUE = 4 
Const RED = 8 

flags = ADMINISTRATOR or BLUE 

If flags and ADMINISTRATOR then 
    ' Do something since the person is an admin 
End If 

or■如果設置了標誌添加標記和and支票。

現在我們可以檢查多達32個這個變量的布爾值。非常適合存儲在數據庫中。您可以使用更大的數據類型,如long來存儲更多。