3
我一直在嘗試編譯一些代碼,包括使用Visual Studio 2012的一些Boost類,並且我一直在接收關於多個聲明的錯誤。Visual Studio使用Boost編譯
1>c:\boost\boost_1_53_0\boost\tr1\memory.hpp(43): error C2874: using-declaration causes a multiple declaration of 'boost::bad_weak_ptr'
這與從boost \ tr1 \ memory.hpp包含的其他幾個Boost類發生。
我檢查過是否有其他包含目錄和庫目錄,並且據我所知,但問題依然存在。任何人有任何想法?謝謝。
也許你正在做類似「使用命名空間標準」的東西,而與Boost命名空間類似。請注意,[''](http://en.cppreference.com/w/cpp/header/memory)標頭公開['bad_weak_ptr'](http://en.cppreference.com/w/cpp/memory/bad_weak_ptr)。 –
2013-04-24 09:49:27
據我可以告訴,我沒有使用任何命名空間爲我的代碼減主文件。 – Aetylus 2013-04-24 10:18:28
這裏同樣的問題。我有一個使用命名空間升壓指令。我知道它也是在內存頭文件中定義的,但我沒有得到vc10和11之間的區別.vc11版本的行使用_STD shared_ptr。我通過刪除boost :: memory include來「解決」了我的問題。有人能詳細說明嗎? – anhoppe 2013-07-25 10:26:53