是否可以将函数指针保存在 std::vector 中?并在迭代器循环中调用每个函数?
最佳答案
Is it possible to keep function pointers in an
std::vector
?
当然可以,只要它们都是同一类型:
void foo()
{
std::cout << "inside foo\n";
}
void bar()
{
std::cout << "inside bar\n";
}
void baz()
{
std::cout << "inside baz\n";
}
std::vector<void(*)()> fps { foo, bar, baz };
And call each function in an iterator loop?
完全没有问题:
for (auto&& fp : fps)
{
fp();
}
关于c++ - 是否可以将函数指针保存在 std::vector 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26133733/