CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
(图)邪恶的韩国UMPC 使用 Java 编写数据库应用新规范
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

C# 的网络编程问题。

楼主poptang2(poptang2)2005-03-14 12:10:22 在 .NET技术 / C# 提问

private   static   ManualResetEvent   connectDone   =   new   ManualResetEvent(false);  
   
  private   void   button1_Click(object   sender,   System.EventArgs   e)  
  {  
      Socket   s   =   new   Socket   AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);  
      IPAddress   ipaddr   =   IPAddress.Parse("127.0.0.1");  
      IPEndPoint   ipe   =   new   IPEndPoint(ipaddr,8900);  
   
      s.BeginConnect(ipe,new   AsyncCallback(ConnectCallback),s);  
      connectDone.WaitOne();  
  }  
   
  private   static   void   ConnectCallback(IAsyncResult   ar)  
  {  
      Socket   client   =   (Socket)ar.AsyncState;  
   
      if   (client.Connected   ==   false)  
      {  
   
              IPAddress   ipaddr   =   IPAddress.Parse("127.0.0.1");  
              IPEndPoint   ipe   =   new   IPEndPoint(ipaddr,8900);  
              client.BeginConnect(ipe,new   AsyncCallback(ConnectCallback),client);  
      }  
      else  
      {  
              client.EndConnect(ar);  
              connectDone.Set();  
      }  
  }  
  1。为何第一行的ManualResetEvent类型定义前要加static关键字?  
  2。为何后面的ConnectCallback函数的定义前面也要加static关键字?  
  多谢。  
  问题点数:50、回复次数:6Top

1 楼zhouabc(试着专业一点)回复于 2005-03-14 12:25:40 得分 0

 
  upTop

2 楼yuqingjiang()回复于 2005-03-14 14:24:58 得分 8

尽管MSDN的例子里常有static   变量,实际上1   和   2   前都无需使用static   的关键字。static   只是表明了作用域的范围。Top

3 楼tianyajinhui(tianya)回复于 2005-03-14 14:31:05 得分 8

应该要要的吧,,否则可能编译器会报错的,因为它认为这是一个不能被改变的,所以要用static做标记,,这样就不会了,Top

4 楼lampson123(微软)回复于 2005-03-14 14:37:45 得分 4

可以不要吧,....Top

5 楼The123(Shall We Dance? :))回复于 2005-03-14 14:47:10 得分 15

private   static   void   ConnectCallback(IAsyncResult   ar)  
   
  因为它是被上面的静态方法调用的,所以需要加上关键字static  
   
  Top

6 楼zjf_dl(飘香剑雨)回复于 2005-03-14 15:00:55 得分 15

使用   static   修饰符声明属于类型本身而不是属于特定对象的静态成员。static   修饰符可用于字段、方法、属性、运算符、事件和构造函数,但不能用于索引器、析构函数或类型。  
   
  Top

相关问题

  • c# 网络编程
  • 关于c++网络编程
  • Visual C++网络编程问题
  • 关于C/S结构的网络编程?
  • 用c能学习网络编程吗?
  • 想用.net(c#)做网络编程(socket),
  • C# 网络编程的问题。
  • C语言网络编程求教??
  • C#网络编程小问题~~
  • 求c#网络编程电子书

关键词

  • 函数
  • client
  • socket
  • connectcallback
  • connectdone
  • 关键字
  • ipendpoint
  • ipaddr
  • manualresetevent
  • ipaddress

得分解答快速导航

  • 帖主:poptang2
  • yuqingjiang
  • tianyajinhui
  • lampson123
  • The123
  • zjf_dl

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...

社区焦点:

教你怎样用C#搞笑整人
最懒惰的程序员写的Cache
程序员如何掌握专业英语
Java栈与堆
分享:让人懊恼的面试
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo