Compiler Error C2698

 

For the latest documentation on Visual Studio 2017, see Visual Studio 2017 Documentation.

For the latest documentation on Visual Studio 2017, see Compiler Error C2698 on docs.microsoft.com. the using-declaration for 'declaration 1' cannot co-exist with the existing using-declaration for 'declaration 2'

Once you have a using declaration for a data member, any using declaration in the same scope that uses the same name is not permitted, as only functions can be overloaded.

The following sample generates C2698:

// C2698.cpp  
struct A {  
   int x;  
};  
  
struct B {  
   int x;  
};  
  
struct C : A, B {  
   using A::x;  
   using B::x;   // C2698  
}  

Show: