none
问个基础问题,请进来看代码 RRS feed

  • 问题

  • 代码如下:

    ...

    public:

    IOCPThreadPool(); ~IOCPThreadPool() { InternalDispose(); } !IOCPThreadPool() { InternalDispose(); } <--请问这个构造函数之前的感叹号是什么意思?

    2012年4月18日 6:19

答案

  • JosephChen197701你好!

    ~IOCPThreadPool() 是析构函数,引用类型的析构函数用于执行对资源的显式清除。

    !IOCPThreadPool()终结器,清理非托管资源可以被析构函数显式调用,也可以被垃圾收集器隐式调用。

    在Visual C++终结,同于Finalize方法的。公共语言运行库文件使用终结和Finalize方法同义 Finalize方法垃圾收集器调用,垃圾收集器调用继承链每个终结与Visual C + +中的析构函数不同调用派生类的终结不会导致编译器调用所有基类终结

    希望我的回复对你有所帮助。如果你想知道更多关于终结器的只是,请参考: http://msdn.microsoft.com/zh-cn/library/ms177197(v=vs.100).aspx。

    祝你好运!


    Helen Zhao [MSFT]
    MSDN Community Support | Feedback to us

    2012年4月19日 5:51

全部回复

  • Error 1 error C3294: this syntax is not support with /clr:oldSyntax: please use '~IOCPThreadPool' instead

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2012年4月18日 7:20
    版主
  • 请问楼上,这个构造函数前加感叹号,代表什么意思,按你的说法,就是和析构函数一样么?
    2012年4月18日 10:16
  • JosephChen197701你好!

    ~IOCPThreadPool() 是析构函数,引用类型的析构函数用于执行对资源的显式清除。

    !IOCPThreadPool()终结器,清理非托管资源可以被析构函数显式调用,也可以被垃圾收集器隐式调用。

    在Visual C++终结,同于Finalize方法的。公共语言运行库文件使用终结和Finalize方法同义 Finalize方法垃圾收集器调用,垃圾收集器调用继承链每个终结与Visual C + +中的析构函数不同调用派生类的终结不会导致编译器调用所有基类终结

    希望我的回复对你有所帮助。如果你想知道更多关于终结器的只是,请参考: http://msdn.microsoft.com/zh-cn/library/ms177197(v=vs.100).aspx。

    祝你好运!


    Helen Zhao [MSFT]
    MSDN Community Support | Feedback to us

    2012年4月19日 5:51
  • 斑竹威武,非常感谢,以后还请多指教,谢谢
    2012年4月19日 10:18