如何将string转换成函数调用(详见内)

armylau 2003-03-20 09:28:12
例 string str = "sin(x)"; //或"cos(x)"之类, 希望能从dropDownList中接受字符串
此时我再有一函数,例
private void draw()
{
for(int i=0; i<8; i++)
{
// Chart1.Series["Series1"].Points.AddXY(i,Math.Sin(i)); //可执行
如果想根据str来调用不同的函数(如函数函数), 如何实现上述的功能呢?
// Chart1.Series["Series1"].Points.AddXY(i,str); // 错,不接受str参数
}
}

// 在Matlab中有类似的问题则可用eval来解决, C#中如何解决呢?
//
...全文
57 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
armylau 2003-03-20
  • 打赏
  • 举报
回复
不错, 正是想知道的, 到时再试试能否封装起来, 散分
贝贝壳壳 2003-03-20
  • 打赏
  • 举报
回复
using System;
using System.Reflection;

namespace fupip
{
public class test
{
static void Main()
{
Type type=typeof(System.Math);

//object obj=Activator.CreateInstance(type,true);

MethodInfo method=type.GetMethod("Sin",new Type[]{typeof(System.Double)});

object s=method.Invoke(null,new object[]{3.14d });
Console.WriteLine(s.ToString());
}
}
}
armylau 2003-03-20
  • 打赏
  • 举报
回复
那里的问题好像有点不同, 用反射?....
最好能举个实例....Thx
luoqing 2003-03-20
  • 打赏
  • 举报
回复
可以利用反射来调用
popcorn 2003-03-20
  • 打赏
  • 举报
回复
见http://expert.csdn.net/Expert/topic/1231/1231604.xml?temp=.2371942

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧