问题描述
可能标题不能表达我实际要表达的意思。是这样的,在程序中需要调用一个特殊的dll中的函数这个dll中有类似A_1A_2...A_20这样的函数,有没有办法直接一个循环语句把这20个函数调用一次啊一些脚本编程语言里面就有类似的eval的功能不知道vb.net可以不?
解决方案
解决方案二:
纠结能不能写字符串当作函数名,对你来说,有多大意义吗?能成为一个软件设计师?
解决方案三:
在.net系统中,这类程序,如果一个工作了8年的程序员,面对一个2万行的、主要由他设计开发的系统,其中有几行代码需要动态特性,其实很容易就能做到。因为任何强类型的编程语言,不是不能动态调用,而是非常规范地用一套可保证基本性能、类型安全、保证基本调试能力的框架来调用动态特性,而且是将其使用量压缩到千分之一、不懂更合理的设计方式、不得不用的时候。这不是你现在该纠结的。你现在需要的不是把简单的东西弄花哨,而是把你想去花哨地表现的那个东西真正用正规的方式设计得非常强大了。你一点应用背景都不研究,就只是关心编程语句如何能“破”掉规范,这就是误入歧途了。
解决方案四:
引用楼主spark_li的回复:
可能标题不能表达我实际要表达的意思。是这样的,在程序中需要调用一个特殊的dll中的函数这个dll中有类似A_1A_2...A_20这样的函数,有没有办法直接一个循环语句把这20个函数调用一次啊一些脚本编程语言里面就有类似的eval的功能不知道vb.net可以不?
据我所知,不可以!
解决方案五:
通过反射就能调用了
解决方案六:
如果是C标准导出函数,可以写循环,LoadLibrary后,获取地址调用。如果.net写的,需要反射查找。但都没有复制粘贴来的快捷。
解决方案七:
反射,然后CallByName
时间: 2024-08-03 14:21:47