【问题标题】:What's the difference between stlportd.5.2.dll and stlportstld.5.2.dll?stlportd.5.2.dll 和 stlportstld.5.2.dll 有什么区别?
【发布时间】:2012-08-12 21:29:37
【问题描述】:

我编译STLport后,在bin目录中得到了三个.dll:一个是release的(stlport.5.2.dll),一个是debug的(stlportd.5.2.dll和stlportstld.5.2.dll)。 dll)。我想知道为什么那里有两个调试 dll。谢谢!

【问题讨论】:

    标签: c++ stl stlport


    【解决方案1】:

    stlportstld*.dll 代表Debug Mode of STLport

    调试模式可让您在使用 STL 迭代器和算法的应用程序代码中发现非常隐蔽的错误。

    它执行迭代器有效性和所有权以及算法前提条件的运行时检查。 当调试检查发现错误时,它会终止程序并提供详细的诊断信息。

    调试模式下的 STLport 与发布模式下一样是异常安全和线程安全的。

    stlportd*.dllstlport*.dll 的调试版本,它不像stlportstld*.dll 那样提供额外的调试功能(尽管它也可以“调试”)。

    您也可以参考 STLport 包中的stl\config\_auto_link.h 来查看二进制文件之间的区别:

    #  if defined (_STLP_DEBUG)
    #    define _STLP_LIB_OPTIM_MODE "stld"
    #  elif defined (_DEBUG)
    #    define _STLP_LIB_OPTIM_MODE "d"
    #  else
    #    define _STLP_LIB_OPTIM_MODE ""
    #  endif
    

    【讨论】:

      猜你喜欢
      • 2011-01-12
      • 1970-01-01
      • 2011-02-13
      • 1970-01-01
      • 2018-07-04
      • 2017-10-20
      • 1970-01-01
      • 2010-12-19
      • 2010-11-10
      相关资源
      最近更新 更多