gpt4 book ai didi

c++ - VC++ "Re-use"一个函数?

转载 作者:太空宇宙 更新时间:2023-11-04 16:29:15 27 4
gpt4 key购买 nike

如何重用一个函数?

好吧,假设我在下面有这个“主要”功能:

bool A = false;
bool B = true;
void MainFunction(bool Whatever) {
if(!Whatever) {
A = true;
if(A) {
B = false;
} else if(!A) {
B = true;
}
}
}

现在我想使用 MainFunction 创建一个新函数,如下所示:

MainFunction ANewFunction(false);
MainFunction AnotherNewFunction(true);

显然那是行不通的,那么有什么方法可以将一个函数“重用”为另一个函数吗?

最佳答案

欢迎您让一个函数调用另一个函数。例如:

void ANewFunction() {
MainFunction(false);
}
void AnotherNewFunction() {
MainFunction(true);
}

你甚至可以变得花哨:

#include <functional>
auto ANewFunction = std::bind(&MainFunction, false);
auto AnotherNewFunction = std::bind(&MainFunction, true);

无论哪种方式,您都可以调用 ANewFunctionAnotherNewFunctionMainFunction 将使用给定的参数进行调用。 (在后一种情况下,它们不再是真正的函数。它们被称为函数对象,或 仿函数,但您仍然可以像普通函数一样调用它们:ANewFunction().)

关于c++ - VC++ "Re-use"一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8799518/

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