什么是布尔标志

时间:2011-10-03 01:40:07

标签: vb.net if-statement

我正在参加Visual Basic 2010课程,我正试图掌握这个名为旗帜的新术语。我有点明白它与布尔条件有关。我不太清楚旗帜是什么。我看到使用术语flag的引用。我理解当布尔值,条件触发标志时,它有一些事情要做。但是旗帜是什么?你怎么认出来的?有人可以举个例子。

3 个答案:

答案 0 :(得分:7)

通常,“Flag”只是真/假条件的另一个术语。

在更具体的背景下,它可能具有更具体的含义。例如,CPU可以保持“算术标志”,每个标志指示由先前算术运算产生的真/假条件。例如,如果前一个操作是“ADD”,则标志将指示添加的结果是零,小于零还是大于零。

我认为该术语来自用于表示通过/不通过状态的标志,例如,铁路旗手指示列车是否安全进行。

答案 1 :(得分:2)

你知道BOOL是一个'Flag',因为只有2个结果是TRUE或FALSE。如果条件得到满足,在决策过程中使用BOOL是一种简单的方法来“标记”某个结果。

一个例子可能是:

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

答案 2 :(得分: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来存储更多数据类型。

相关问题