嘗試編譯具有與VS2010的shared_ptr許多用途舊的項目。 所以,我已預編譯的頭(stdafx.h中)其中:TR1:提高VS VS2010,使用shared_ptr的沒有命名空間
..
使用命名空間std; ..的#include 「升壓/ shared_ptr的」
使用命名空間升壓;
以後在代碼中我集中使用了shared_ptr spObject;
我應該在stdafx.h中改變,讓我沒有必要無處不在的代碼* shared_ptr的*爲* some_namespace :: shared_ptr的替換*?
是否有可能無需升壓的命名空間衝突做/升壓:: TR1 /性病:: TR1 /性病?
現在我有很多的錯誤:
錯誤C2872: 'shared_ptr的':不明確的符號 可能是「K:\ boost10 \提升\ smart_ptr \ shared_ptr.hpp(165):升壓:: shared_ptr的」 或 'C:\ Program Files文件(x86)的\微軟的Visual Studio 10.0 \ VC \包括\內存(1418)的std :: TR1 :: shared_ptr的'
可能是不可能的?我看到的唯一變化是定義宏**#定義的shared_ptr的std :: shared_ptr的** – 2012-02-19 18:52:52
現在我覺得是不是在C++可能(沒有明確的資格命名空間),它是如此傷心:( – 2012-02-19 19:07:33
這是一原因是'using namespace' is bad。不要在未來的項目中使用它,或者至少只在_one_庫上使用它,你仍然可以通過使用更多限制的'using std :: shared_ptr'來避免大量的命名空間限制等等聲明。 – bames53 2012-02-26 07:32:36