Vbscript 从子程序返回

Vbscript 从子程序返回,vbscript,Vbscript,我想写一个子程序,计算出要做什么,然后返回 在你跳上“返回的子例程是函数LOL!”的潮流之前,我想让返回像在调用子例程的函数体中一样执行,就好像我有一个预处理器来做替换一样,因为否则这个代码库会很快变得非常笨拙,返回函数的返回值似乎很困难 vb(对不起,我不能更具体地说明什么版本——我正在为嵌入式系统编写公式,我们的API文档是“它运行vb”)会让我这样做吗?还是让我陷入困境 我希望返回像在调用子例程的函数体中一样执行,就好像我有一个预处理器来进行替换一样,因为否则这个代码库会很快变得非常笨拙,

我想写一个子程序,计算出要做什么,然后返回

在你跳上“返回的子例程是函数LOL!”的潮流之前,我想让返回像在调用子例程的函数体中一样执行,就好像我有一个预处理器来做替换一样,因为否则这个代码库会很快变得非常笨拙,返回函数的返回值似乎很困难

vb(对不起,我不能更具体地说明什么版本——我正在为嵌入式系统编写公式,我们的API文档是“它运行vb”)会让我这样做吗?还是让我陷入困境

我希望返回像在调用子例程的函数体中一样执行,就好像我有一个预处理器来进行替换一样,因为否则这个代码库会很快变得非常笨拙,返回函数的返回值似乎很困难

不是。尾部调用是一种常见的做法,效果很好


它们比拥有一个除非您想返回其值否则永远无法调用的函数要好得多。

听起来您在问是否可以在VB中实现C/C++风格的宏,答案是否定的。您可以通过生成vbscript并在中替换正确的东西来伪造它


如果我的解释正确的话,VB.Net中的lambda和委托实际上与您要求的不同。

调查VB(.Net?)是否可以返回函数的指针或引用。我知道你可以用C/C++。然后你就可以盲目地执行“子程序”的响应了。@whatsisname:我不太确定我是否理解你的意思?我可以通过对AddressOf关键字函数的引用来判断它们在做什么。不幸的是,尽管我不确定这有什么帮助,但该函数在任何其他上下文中都是无用的。下一个最好的选择是实现我自己的预处理器来替换中的宏。不过,谢谢你,我可能会在这段时间内让它工作,因为如果没有其他东西,如果执行得当,它们应该是有点互换。