首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请明眼人给讲一讲

2013-07-20 
请明白人给讲一讲在看别人写的代码。以下的段落中有两处不太明白,请明白人给讲一讲。1. 声明DEVICEINFO结构

请明白人给讲一讲
在看别人写的代码。以下的段落中有两处不太明白,请明白人给讲一讲。
1. 声明DEVICEINFO结构时必须用public关键字吗? 
2. 删除时采用的委托部分看不太懂。
struct DEVICEINFO
        {
            public int      nDeviceID;
            public string   strModel;
            public string   strIpAddress;
            public int      nPort;
            public string   strId;
            public string   strPasswd;
            public int      hDevice;
            public int      hMediaSource;
        }

private List<DEVICEINFO> DevInfo = new List<DEVICEINFO>();

......

private void BTN_ADD_Click(object sender, EventArgs e) //Add
{
    DEVICEINFO temp = new DEVICEINFO();
            temp.hDevice = hDevice;
            hDevice = 0;
            temp.nDeviceID = nDeviceID;
            temp.strModel = strModel;
            temp.strIpAddress = strIpAddress;
            temp.nPort = nPort;
            temp.strId = strID;
            temp.strPasswd = strPW;
            DevInfo.Add(temp);
            ......
}
private void BTN_REMOVE_Click(object sender, EventArgs e) //Delete
{
    int nDeviceID = int.Parse(LISTVIEW_DEVICE.Items[nSelItem].SubItems[0].Text);
    DEVICEINFO result = DevInfo.Find(
       delegate(DEVICEINFO temp)


       {
            return temp.nDeviceID == nDeviceID;
       }
    );
    int hDevice = result.hDevice;
}

[解决办法]
1.不一定看你自己是在同一个窗体用代码就不用了,不在调用那就要了,它默认就public
2.你下面用的委托和其他你平时用的不一样?不过这个也就带参数和返回值而已,你自己定义带参数和有返回值的

热点排行