なぜB :: fはあいまいさを解決しませんが、A :: fはしませんか? namespace A
{
class X { };
void f(X);
}
namespace B
{
void f(A::X);
void g(A::X x)
{
using B::f; // which expression shall I us
のために範囲ベースこれは、2011年からこの質問への拡張である:Visual Studioの2015を使用して Range-based for loops and ADL 、私は引数を使用してカスタムコンテナの範囲ベースのforループを作ることができないんだけど依存ルックアップ(ADL)。私はカスタムコンテナで以下の非常に簡単なテストケースを作った : #include <vector>
na
には、次のC++のプログラムを検討関数テンプレートdynamic_pointer_castでは動作しません理由:MSVC 2010でコンパイルする場合 #include <memory>
struct A {};
struct B : A {};
int main()
{
auto x = std::make_shared<A>();
if (auto p = d