我有一个问题:有人能给我一个搜索二进制表以找到从1到0的变化的例子吗?例如,一行有
public slots:
void SizeCHange(bool checked); //using bool parameter
//...
QObject::connect(m_check4, SIGNAL(clicked(bool)), this, SLOT(SizeCHange(bool)));
//...
void Window::SizeCHange(bool checked)
{
if(checked)
{
setFixedSize(400, 800 - 200);
}
else
{
// removing fixed size
setMinimumSize(QSize(0, 0));
setMaximumSize(QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX));
}
m_bouton4->setVisible(checked);
}
它应该给我2个更改。我只想搜索一行。
答案 0 :(得分:0)
for(int i=1; i< binarytableline.length; i++){
if (binarytableline[i - 1] == 1 && line[i] == 0) changes++;
}
请记住,索引从零开始:
基本上,上面代码中发生的是我们在循环中循环。现在,我是索引。让我们从循环的开始开始。
i=1
因此,binarytableline [1-1] =二进制表行的第一个索引,或者是第一个数字。现在,我们看到它是否等于1
,第二个索引是i
,等于0
。要检查,我们执行以下操作:
binarytableline[i - 1] == 1 && line[i] == 0
这意味着是二进制数字从一个数字到下一个数字的变化,在我们的例子中,它是第一个数字的第0个索引。现在,我们通过执行changes
将变量changes++
迭代1。同样,这是一个for循环,这意味着我们将循环遍历所有这样的元素。其更改的次数将记录在int changes
。
如果有帮助,请告诉我,
Ruchir