在Visual 2012中访问std :: tr1 :: smart_ptr而不是std :: smart_ptr

时间:2012-11-23 09:11:39

标签: c++ visual-studio-2010 c++11 visual-studio-2012 smart-pointers

我们有一个同时使用visual studio 2010和visual studio 2012的项目。在2010项目中,我们使用tr1的智能指针实现。此代码具有多个依赖项,因此如果没有很多麻烦就无法更改。然后将其与2012解决方案相关联,我们尝试使用std:smart_ptr。

在编译时,由于smart_ptr的两个版本不尽相同,即使我最初认为它们会是公平的,因此它也会失败。

通过网络上的类似问题阅读一个解决方案是使用boost将正确的东西添加到tr1命名空间,但我们不希望这是除了总的最后手段之外的额外依赖。

有没有办法在visual studio 2012中访问tr1的智能指针而不是简单的std :: version,这样它可以编译而不会出错?我曾尝试在visual studio 2012中使用std :: tr1 :: shared_ptr而这不起作用,是否有一个标题或我需要包含的内容。我们已经包含了<memory>标头,显然每个代码库都是相互独立编译的。任何帮助表示赞赏

P.S也不可能将平台版本更改为100而不是110。再次存在进一步的依赖性阻止这种情况发生。

0 个答案:

没有答案