if Sock <> INVALID_SOCKET then
  begin
    Result := True;
    ClientSocket.FActive := True;
    ClientSocket.FConnected := True;
    ClientSocket.FSocket := Sock;
    ClientSocket.FDomain := FDomain;
    ClientSocket.SockType := FSockType;
    ClientSocket.FProtocol := FProtocol;
    ClientSocket.FBlockMode := FBlockMode;
    ClientSocket.FRemoteHost := inet_ntoa(addr.sin_addr);
    ClientSocket.FRemotePort := IntToStr(ntohs(addr.sin_port));
    DoAccept(ClientSocket);
  end;
DoAccept(ClientSocket);怎么理解什么意思if Assigned(FOnAccept) then
    FOnAccept(Self, ClientSocket);
函数指针指向哪个函数呢求解

解决方案 »

  1.   

    DoAccept是 实现真正接受 的函数
    FOnAccept是你的接受事件响应函数,以便完成你希望在接受时要做的事情
      

  2.   

    FOnAccept 是函数指针 
    当你Assigned(FOnAccept)=True 时 
    表明你响应了OnAccept 事件 
    FOnAccept(Self, ClientSocket);表示调用你写的响应事件的函数 Self, ClientSocket 就是 OnAccept 事件的函数参数 DoAccept(ClientSocket) 就是函数调用 执行DoAccept这个函数 方法