日期:2014-05-18 浏览次数:20840 次
template <class theCL,class CL> class CMyList { public: //创建一个list容器的实例LISTINT typedef list<theCL> myList; // typedef list<int (*callback)(int,char*)> myList; CMyList(void); ~CMyList(void); int LinkCount; myList useList; myList BakList; //销毁 void DestroyList(); //重置为空表 void ClearList(); //加在头节点 BOOL AddFirst(theCL e); //加在头节点 BOOL AddBakFirst(theCL e); //加在尾节点 BOOL AddLast(theCL e); //取得头 theCL GetFirst(); //取得尾部 theCL GetLast(); //移除头 BOOL RemoveFirst(); //移除尾部 BOOL RemoveLast(); //第i个位置之前插入 BOOL InsertAt(int i,theCL e); //删除第I个 BOOL ListDelete(int i); //元素的数量 int GetCount(); //取得第i个元素 theCL GetAt(int i); //删除元素 BOOL ListDelete(theCL e); BOOL SetAt(int i,theCL e); //取得头 theCL GetBakFirst(); BOOL RemoveBakFirst(); //元素的数量 int GetTempCount(); };
------解决方案--------------------
C++指针定义就是C#的类对象定义,而你的sockaddr_in定义为了结构体,这样使用起来就比较麻烦,因为C#处理结构体时按照值类型处理的,而不是引用地址,如果一定要用到地址的场合,建议改写为class。
另外你的数据类型对应有误,C++的long不是C#的long,C++的long是C#的int,这里有数据类型对照表,自己看:http://www.cnblogs.com/yiki/archive/2008/10/29/1321848.html