Compiler Error C2650


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Error C2650.

operator' : cannot be a virtual function

A new or delete operator is declared virtual. These operators are static member functions and cannot be virtual.

The following sample generates C2650:

// C2650.cpp  
// compile with: /c  
class A {  
   virtual void* operator new( unsigned int );   // C2650  
   // try the following line instead  
   // void* operator new( unsigned int );