Share via


編譯器警告 (層級 4) C4626

'derived class':指派運算子已隱含定義為刪除,因為基底類別指派運算子無法存取或已被刪除

指派運算子已遭刪除或無法在基底類別中存取,因此無法對衍生類別產生。 嘗試指派此類型的物件將會造成編譯器錯誤。

此警告預設為關閉。 如需詳細資訊,請參閱 預設為關閉的編譯器警告

下列範例會產生 C4626,並示範如何修正此問題。

// C4626
// compile with: /W4
#pragma warning(default : 4626)
class B
{
// public:
   B& operator = (const B&)
   {
      return *this;
   }
};

class D : public B
{

}; // C4626 - to fix, make B's copy constructor public

int main()
{
   D m;
   D n;
   // m = n;   // this line will cause an error
}