请问函数本身可以做变量吗
请教函数本身可以做变量吗?我写了一个函数Public function f(x#)dim s#……s 2 * method(x#)……End functio
请教函数本身可以做变量吗? 我写了一个函数 Public function f(x#) dim s# …… s = 2 * method(x#) …… End function 其中method(x#)是嵌套的一个计算函数,而这个函数是不固定的,可以使随意输入的一个函数 请问大伙有没有什么方法动态设置method(x#),以便零活改变method(x#) 急切求解,三克油……[解决办法] C语言可以,VB不行[解决办法] vb6没那么面向对象,所以没有委托、函数指针。更没有到函数式编程的地步了。[解决办法] 按照难易程度 (1)给你完整的代码: 新建2个类模块: 第一个里面写:
VB codePublic Function method(ByVal n As Long) As Long method = n * 2End Function[解决办法] 当然,对于方法(1),更严谨的做法是创建一个接口,比如 IMethodClass 然后Class1 Class2 用 Implements 实现这个接口。 传参数使用 IMethodClass 代替 Object,不过可能对于初学者有点复杂了。[解决办法] 探讨 vb6还是很强大的。caozhy厉害。[解决办法] 探讨 当然,对于方法(1),更严谨的做法是创建一个接口,比如 IMethodClass 然后Class1 Class2 用 Implements 实现这个接口。 传参数使用 IMethodClass 代替 Object,不过可能对于初学者有点复杂了。[解决办法] 如果根据楼主具体的需求还是觉得还是映射比较好,你传进去哪个class对象还是要根据x的值,倒不如根据x的值直接调用对应的函数了,做到一个个class中代码量复杂度并不会少,尽管形式上好像是函数做变量了,不过这个为了xx而xx看起来显然不划算的。[解决办法] 多谢各位。如果我用C写一个使用函数指针的函数,那么在vb中怎么调用呢? 如果是VC调用VB,VB可以用AddressOf运算符,将VB的函数参数传给VC。注意VB的函数要放入标准模块。 如果是VB调用VC,使用CallWindowProc API,VC直接把函数地址传过来即可,(更复杂的情况需要一小段嵌入机器指令)。[解决办法] 探讨 引用: 当然,对于方法(1),更严谨的做法是创建一个接口,比如 IMethodClass 然后Class1 Class2 用 Implements 实现这个接口。 传参数使用 IMethodClass 代替 Object,不过可能对于初学者有点复杂了。 明确接口,可以增加代码执行效率;而非严谨的问题 对于绑定的接口对象,在编译时由于可以定……