gpt4 book ai didi

c++ - C 或 C++ 中的协程?

转载 作者:行者123 更新时间:2023-12-02 17:51:39 24 4
gpt4 key购买 nike

好像coroutines通常在高级语言中找到。

它们似乎也有几种不同的定义。我正试图找到一种方法,让 C 中的协程像我们在 Lua 中一样。

 function foo()     
print("foo", 1)
coroutine.yield()
print("foo", 2)
end

最佳答案

C 或 C++ 中的协程没有语言级别的支持。

您可以使用汇编程序或纤程来实现它们,但结果不可移植,并且在 C++ 的情况下,您几乎肯定会失去使用异常的能力,并且无法依赖堆栈展开来进行清理。

在我看来,您应该使用支持它们的语言或不使用它们 - 使用不支持它们的语言实现您自己的版本是自找麻烦。

关于c++ - C 或 C++ 中的协程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7415706/

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