diff --git a/hist/hist/inc/TProfile3D.h b/hist/hist/inc/TProfile3D.h
index 88f38e3bf19a8cb259b6814daca564194ef06a57..f971819b61dca8a5e9a25f7d7d00089aa564e71c 100644
--- a/hist/hist/inc/TProfile3D.h
+++ b/hist/hist/inc/TProfile3D.h
@@ -91,6 +91,7 @@ public:
                                                 ,Int_t nbinsy,const Double_t *ybins
                                                 ,Int_t nbinsz,const Double_t *zbins,Option_t *option="");
    TProfile3D(const TProfile3D &profile);
+   TProfile3D &operator=(const TProfile3D &profile);
    virtual ~TProfile3D();
    virtual Bool_t    Add(TF1 *h1, Double_t c1=1, Option_t *option="");
    virtual Bool_t    Add(const TH1 *h1, Double_t c1=1);
diff --git a/hist/hist/src/TProfile3D.cxx b/hist/hist/src/TProfile3D.cxx
index 471400e99880047cd0fa58864bb28192a437ba98..b01f7825989271a63ecb2e87faa18a67ec6e3469 100644
--- a/hist/hist/src/TProfile3D.cxx
+++ b/hist/hist/src/TProfile3D.cxx
@@ -160,6 +160,12 @@ TProfile3D::TProfile3D(const TProfile3D &profile) : TH3D()
    ((TProfile3D&)profile).Copy(*this);
 }
 
+TProfile3D &TProfile3D::operator=(const TProfile3D &profile)
+{
+   ((TProfile3D &)profile).Copy(*this);
+   return *this;
+}
+
 ////////////////////////////////////////////////////////////////////////////////
 /// Performs the operation: `this = this + c1*f1` .