我正在学习C ++和Blender编码。我正在阅读此文档blender context documentation,遇到术语回调。
为什么回调应该存在?回调在Blender上下文中做什么?
我想对回调或回调函数有一个非常简单的解释,并且要有一个非常简单的代码才能理解。
回调是可以传递给框架的函数(在本例中为Blender)。该框架具有控制权并做了一些工作。现在,只要合适,框架(Blender)calls(使用给定的参数执行)此功能。因此,将控制权授予您的代码back。
(虚构)示例:移交打印文本的功能,例如
void test()
{
std::cout << "Got called back!" << std::endl;
}
可以说有一些注册方法
onRenderCallback(test);
现在,每当Blender渲染时,它将执行test
并因此打印“ Got called back!
”。
常用,该函数带有一些参数。这可以用于鼠标输入或类似操作。例如,您可以注册一个函数,该函数可以在任何按键上获取键代码并对其执行某些操作。
回调在观察者模式的上下文中特别有用。