是什么 原因,使C++的线程函数,必须是Static 的?那个 隐式 的 this 参数 不会是技术障碍吧?
解决方案 »
- C#用Lotus Notes自动发送邮件,正文中如何添加表格
- 请高手帮忙解答DataSource赋值之后引起的窗体假死问题
- 设想的一个 c# 缓存服务,大家觉得作用如何?或者提些建议
- C#中接口的多重继承的问题(比较拗,喜欢挑战的朋友帮顶一顶!)
- 问一个关于读取网络流的问题
- C# MenuItem 动态构建菜单项
- c# socket 发送结构体的问题
- 如何将datatable有效的行列对换??
- 做好的.net项目如何编译上传,直到在网上能够看到阿?
- 关于送分,领分的请注明原因,否则当倒分处理
- 有关线程问题,在线等,谢谢!
- 高手们请问一下是不是用sn.exe强名称必须安装.net啊,光框架是不能用啊
根本原因是,C++,与C#的本质区别造成的,
C++面向对象是不完全的,
C#面向对象是完全的;C++里边,启动线程用的API,那么 他如果,用非静态的函数,
那么它就要确定传类的指针 this(就是那个隐式参数),那么他知道是哪个实例么?
所以只能是静态的;
而C#里 线程的启动方法变了,当一个线程对象,是类的成员的时候,一个对象就和一个实例榜定了,
他就知道是哪个实例了,所以
呵呵,但是,如果你在C#类的静态函数,启动线程,就出现了C++同样的问题,她不知道是哪个实例了,所以,
也会报错;