C# 托管

Posted Demo233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 托管相关的知识,希望对你有一定的参考价值。

委托

委托让我们可以把函数引用保存在变量中。这就像在 C++ 中使用 typedef 保存函数指针一样。

委托使用关键字 delegate 声明。看看这个例子,你就能理解什么是委托:

例子:
代码:

delegate int Operation(int val1, int val2); 
public int Add(int val1, int val2) 
{ 
return val1 + val2; 
} 
public int Subtract (int val1, int val2) 
{ 
return val1- val2; 
} 
public void Perform() 
{ 
Operation Oper; 
Console.WriteLine("Enter + or - "); 
string optor = Console.ReadLine(); 
Console.WriteLine("Enter 2 operands"); 

string opnd1 = Console.ReadLine(); 
string opnd2 = Console.ReadLine(); 

int val1 = Convert.ToInt32 (opnd1); 
int val2 = Convert.ToInt32 (opnd2); 

if (optor == "+") 
Oper = new Operation(Add); 
else 
Oper = new Operation(Subtract); 

Console.WriteLine(" Result = {0}", Oper(val1, val2)); 
}

 

以上是关于C# 托管的主要内容,如果未能解决你的问题,请参考以下文章

托管 C# 代码未发生非托管调用

C# 托管非托管代码

从 C# 线程调用非托管代码

C# 最有用的(自定义)代码片段是啥? [关闭]

c#代码片段快速构建代码

此 Canon SDK C++ 代码片段的等效 C# 代码是啥?