gpt4 book ai didi

c++ - 奇怪的 if 语句语法,在 for 循环中没有主体

转载 作者:太空宇宙 更新时间:2023-11-03 10:22:29 25 4
gpt4 key购买 nike

我正在开发第三方 API,其中某处包含以下代码:

// Toggle LEDs 4 time to show we are online
for(int i = 0; i < 4; i++) {
camManager.setCameraGpioOutput(cameraRight, IO_GPIO_1, 1);
QThread::msleep(250);
camManager.setCameraGpioOutput(cameraRight, IO_GPIO_1, 0);
if(QThread::msleep(250); i < 4);
}

那个 IF 条件有效吗?我假设他们想省略最后一个循环的延迟,但这是什么魔法?

最佳答案

来自 if statement doc :

    if constexpr /*optional*/ ( init-statement /*optional*/ condition ) statement-true

来自 C++17。

的确如此,

if(QThread::msleep(250); i < 4);

是有效的,但由于没有采取任何行动,因此几乎毫无意义。所以它相当于

QThread::msleep(250);

我认为代码应该只是为了避免上次 sleep :

if (i < 3) QThread::msleep(250);

关于c++ - 奇怪的 if 语句语法,在 for 循环中没有主体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58522394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com