C ++在主代码中多次使用代码块

时间:2016-08-27 12:01:30

标签: c++

我需要这样的东西:

head()

我想定义一段代码,这段代码将在主代码中重复很多次,但不会在循环中重复。我不想要一个函数,我只想定义一段代码,这些代码将在以后重复很多次,并且我可以简单地用一行调用(代码的一部分需要能够在整数/数组中运行)主要代码)。 有人能帮助我吗?

这是一个解决魔方的程序。它看起来像这样:

#include <iostream>
using namespace std;
int main(){
int x;
x=0;
SOMETHING{
    cout << "Something has been done" << endl;
    x++;
}
do SOMETHING;
return 0;
}

有12个阵列代表立方体的2个状态(一个在移动之前,一个帮助状态使移动成为可能 - 只是为了切换颜色)。 “顺时针移动顶部”功能只是切换颜色,然后均匀排列数组并给出解字符串字母“U”。有12种可能的移动,完整的算法应该找到解决rubiks立方体的最短字符串(例如“RL'DUB'”)。 我的程序并不是真正用于解决Rubik的立方体,但这个例子有助于解释我的问题。

1 个答案:

答案 0 :(得分:0)

如果您不想使用函数,请从C ++ 11开始使用 lamdas

Lambdas基本上是匿名函数,我认为这就是你想要的,你似乎不想定义一个单独的函数:

auto something = [&x]() {
    std::cout << "Something had been done\n";
    ++x;
};

然后,您可以调用它:

something();