当 condition = true 时第一次运行:
第二次运行
通过模拟得出各自的意思:
目前还不知道对于C++代码来说意义大不大,我在YouTube上看到有大佬将DoOnce写成C++ 结构体的形式,封装起来确实容易理解,但是我觉得没有太大的必要,写成结构体形式,最后还是要声明成类中的变量,那和直接定义一个布尔变量有啥区别,还多引入一个结构体头文件。
蓝图中的宏是来解决蓝图中的不便,不是解决C++的,没必要用C++去还原蓝图中的宏,比如说for循环,难道抛开 增强For循环不用,去模仿蓝图中的宏???
对于这段,
就可以这么写:
const bool bTemp = ShouldMoveCheck();
if (bTemp)
{
if (bTemp != bShouldMove)
{
bShouldMove = bTemp;
// Changed to True
}
// While True
}
else
{
if (bTemp != bShouldMove)
{
bShouldMove = bTemp;
// Changed to False
}
// While False
}