黑马程序员技术交流社区
标题:
委托运行问题
[打印本页]
作者:
郝滨
时间:
2013-2-26 14:06
标题:
委托运行问题
namespace kongzhi
{
class Program
{
static void Main(string[] args)
{
Class1 c1 =new Class1();
string[] names = {"kobe","james","bosh","wade","Tmac"};
c1.bianhuan(names);
foreach (var item in names)
{
Console.WriteLine(item);
}
Console.WriteLine("OK");
Console.ReadKey();
}
}
}
这是控制代码
namespace bianhuan
{
public class Class1
{
public void bianhuan(string[] str,
hbdelegate
bh)
{
for (int i = 0; i < str.Length; i++)
{
str
=
bh
(str
);
}
}
这是转换类
namespace bianhuan
{
class hbdelegate
{
public delegate string bhdelegate(string msg);
}
}
委托类hbdelegate 要怎么写 ? 现在错误是bianhuan可访问性不一致
作者:
朱京辉
时间:
2013-2-26 17:18
namespace kongzhi
{
class Program
{
static string alter(string str)
{//定义一个改变string的方法
return str + "!";
}
static void Main(string[] args)
{
Class1 c1 =new Class1();
string[] names = {"kobe","james","bosh","wade","Tmac"};
c1.bianhuan(names,alter); //这里需要两个传入参数,第二个是方法
foreach (var item in names)
{
Console.WriteLine(item);
}
Console.WriteLine("OK");
Console.ReadKey();
}
}
}
namespace bianhuan
{
public class Class1
{
public void bianhuan(string[] str, hbdelegate bh)
{
for (int i = 0; i < str.Length; i++)
{
str[i] = bh(str[i].ToString());
}
}
}
}
namespace bianhuan
{
public delegate string hbdelegate(string str);
//这里是重点,委托的定义,委托是和类同级别的,委托的定义要和方法类似,注意返回值和参数
}
复制代码
关于委托和事件,先仔细了解可以看看我博客,我转载了一篇相关的文章,并且写了一些心得,你可以去看看
http://blog.csdn.net/oxoxzhu/article/details/8613627
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2