直接运行出错,调试运行为何却可以?
我编写了一个通信显示程序,通信部分放在VIEW类中。初始化SOCKET部分放在ON_CREAT中,在VIEW中析构函数中close掉SOCKET。现在出现了一个问题:调试运行时,程序显示正常;但直接运行却常常出现SOCKET初始化错误。我有几个问题向大家请教:
1、为什么开机第一次直接运行正常后,随后直接运行常常出现SOCKET初始化错误?
2、调试运行时,程序为什么又正常显示?
3、SOCKET初始化代码最好放在VIEW类中,还是DOC类中,或是其它类中(老实说,我不知道它们的区别,似乎都可以)?接收数据代码又应该放在哪个类中(程序是用MFC标准生成)?
4、关闭SOCKET代码放在VIEW的析构函数中是否会执行?放在哪个函数中合适?如果不关闭SOCKET,退出程序时,是否自动关闭?
请大家不吝赐教!