diff --git a/src/basics/basics/container/CbVectorPool.h b/src/basics/basics/container/CbVectorPool.h
index a657b1dad257e7fe2bd444664222710033efd70d..329e889e62b757cab80001c4a85886c0bb7597ab 100644
--- a/src/basics/basics/container/CbVectorPool.h
+++ b/src/basics/basics/container/CbVectorPool.h
@@ -459,8 +459,8 @@ private:
 
    CbVectorPool< value_type >* ptrVectorPool;
 
-   CbVectorAllocatorPool( const CbVectorAllocatorPool& );                 //no copy allowed
-   const CbVectorAllocatorPool& operator=( const CbVectorAllocatorPool& );//no copy allowed
+   CbVectorAllocatorPool( const CbVectorAllocatorPool& ) = delete;                 //no copy allowed
+   const CbVectorAllocatorPool& operator=( const CbVectorAllocatorPool& ) = delete;//no copy allowed
 };
 
 
diff --git a/src/basics/basics/writer/WbWriterAvsASCII.h b/src/basics/basics/writer/WbWriterAvsASCII.h
index 652e7986a855e6ab77c17b436255e60aaa059c95..2e3af809c7b4af28d6f951a8521253be99a1a035 100644
--- a/src/basics/basics/writer/WbWriterAvsASCII.h
+++ b/src/basics/basics/writer/WbWriterAvsASCII.h
@@ -20,8 +20,8 @@ public:
 
 private:
    WbWriterAvsASCII() : WbWriter() {}                            
-   WbWriterAvsASCII( const WbWriterAvsASCII& );                  //no copy allowed 
-   const WbWriterAvsASCII& operator=( const WbWriterAvsASCII& ); //no copy allowed
+   WbWriterAvsASCII( const WbWriterAvsASCII& ) = delete;                  //no copy allowed 
+   const WbWriterAvsASCII& operator=( const WbWriterAvsASCII& ) = delete; //no copy allowed
 
 public:
    std::string getFileExtension() override { return ".ascii.inp"; }
diff --git a/src/basics/basics/writer/WbWriterAvsBinary.h b/src/basics/basics/writer/WbWriterAvsBinary.h
index ec9c3ca4ccf269f266cc262d542f864f20630f72..fc34e73eb2850808771d5f5c859500c5797a42fa 100644
--- a/src/basics/basics/writer/WbWriterAvsBinary.h
+++ b/src/basics/basics/writer/WbWriterAvsBinary.h
@@ -19,8 +19,8 @@ public:
    }
 private:
    WbWriterAvsBinary() : WbWriter() {}                             
-   WbWriterAvsBinary( const WbWriterAvsBinary& );                  //no copy allowed 
-   const WbWriterAvsBinary& operator=( const WbWriterAvsBinary& ); //no copy allowed
+   WbWriterAvsBinary( const WbWriterAvsBinary& ) = delete;                  //no copy allowed 
+   const WbWriterAvsBinary& operator=( const WbWriterAvsBinary& ) = delete; //no copy allowed
 
 public:
    std::string getFileExtension() override { return ".bin.inp"; }
diff --git a/src/basics/basics/writer/WbWriterSunflow.h b/src/basics/basics/writer/WbWriterSunflow.h
index d270ab85c3576af14ef8dcf82a70da24e757aba5..39f71070ee6f41b7084ba902175331b257ebd030 100644
--- a/src/basics/basics/writer/WbWriterSunflow.h
+++ b/src/basics/basics/writer/WbWriterSunflow.h
@@ -13,6 +13,9 @@ public:
       static WbWriterSunflow instance;
       return &instance;
    }
+
+    WbWriterSunflow( const WbWriterSunflow& ) = delete;
+    const WbWriterSunflow& operator=( const WbWriterSunflow& ) = delete;
 private:
    WbWriterSunflow() : WbWriter() 
    {
@@ -20,8 +23,6 @@ private:
       if(sizeof(int)          !=4) throw UbException(UB_EXARGS,"error int   type mismatch");
       if(sizeof(float)        !=4) throw UbException(UB_EXARGS,"error float type mismatch");
    }
-   WbWriterSunflow( const WbWriterSunflow& );                  //no copy allowed 
-   const WbWriterSunflow& operator=( const WbWriterSunflow& ); //no copy allowed
 
    static std::string  pvdEndTag;
 
diff --git a/src/basics/basics/writer/WbWriterTecPlotASCII.h b/src/basics/basics/writer/WbWriterTecPlotASCII.h
index 8110d9d75a6b332650afa6415266ff5c0e2bd747..b0a6eb30ea880b0ed07cea5aee2934b32fa1a7f8 100644
--- a/src/basics/basics/writer/WbWriterTecPlotASCII.h
+++ b/src/basics/basics/writer/WbWriterTecPlotASCII.h
@@ -21,8 +21,8 @@ private:
       if(sizeof(float)        !=4) throw UbException(UB_EXARGS,"machine error float type mismatch");
    }
 
-   WbWriterTecPlotASCII( const WbWriterTecPlotASCII& );                  //no copy allowed 
-   const WbWriterTecPlotASCII& operator=( const WbWriterTecPlotASCII& ); //no copy allowed
+   WbWriterTecPlotASCII( const WbWriterTecPlotASCII& ) = delete;                  //no copy allowed 
+   const WbWriterTecPlotASCII& operator=( const WbWriterTecPlotASCII& ) = delete; //no copy allowed
 
    static std::string  pvdEndTag;
 public:
diff --git a/src/basics/basics/writer/WbWriterVtkBinary.h b/src/basics/basics/writer/WbWriterVtkBinary.h
index ead6cdba3b5de05e664f999b3715f96a9c6441e4..759ecd78d286e2102b402a6fa1f30bce68768914 100644
--- a/src/basics/basics/writer/WbWriterVtkBinary.h
+++ b/src/basics/basics/writer/WbWriterVtkBinary.h
@@ -19,8 +19,8 @@ public:
    }
 private:
    WbWriterVtkBinary() : WbWriter() {}                             
-   WbWriterVtkBinary( const WbWriterVtkBinary& );                  //no copy allowed 
-   const WbWriterVtkBinary& operator=( const WbWriterVtkBinary& ); //no copy allowed
+   WbWriterVtkBinary( const WbWriterVtkBinary& ) = delete;                  //no copy allowed 
+   const WbWriterVtkBinary& operator=( const WbWriterVtkBinary& ) = delete; //no copy allowed
 
 public:
    std::string getFileExtension() override { return ".bin.vtk"; }
diff --git a/src/basics/basics/writer/WbWriterX3D.h b/src/basics/basics/writer/WbWriterX3D.h
index 4725e304f550fa7c8f063a6c75445575e40f2c85..fc0e74301d14ce6384db047b4ecc29db65755d0e 100644
--- a/src/basics/basics/writer/WbWriterX3D.h
+++ b/src/basics/basics/writer/WbWriterX3D.h
@@ -20,8 +20,8 @@ private:
       if(sizeof(int)          !=4) throw UbException(UB_EXARGS,"error int   type mismatch");
       if(sizeof(float)        !=4) throw UbException(UB_EXARGS,"error float type mismatch");
    }
-   WbWriterX3D( const WbWriterX3D& );                  //no copy allowed 
-   const WbWriterX3D& operator=( const WbWriterX3D& ); //no copy allowed
+   WbWriterX3D( const WbWriterX3D& ) = delete;                  //no copy allowed 
+   const WbWriterX3D& operator=( const WbWriterX3D& ) = delete; //no copy allowed
 
    static std::string  pvdEndTag;
 
diff --git a/src/basics/geometry3d/GbCylinder3D.cpp b/src/basics/geometry3d/GbCylinder3D.cpp
index 6aa121a5e8a235a0be068659351dba20039e28d1..e2bb839dd0734cd4b7eb91160afe431d2beea756 100644
--- a/src/basics/geometry3d/GbCylinder3D.cpp
+++ b/src/basics/geometry3d/GbCylinder3D.cpp
@@ -23,9 +23,6 @@ GbCylinder3D::GbCylinder3D()
 }
 /*=======================================================*/
 GbCylinder3D::GbCylinder3D(GbCylinder3D* cylinder)
-   : minX1(0.0)   , minX2(0.0)   , minX3(0.0)
-   , maxX1(0.0)   , maxX2(0.0)   , maxX3(0.0)
-   , centerX1(0.0), centerX2(0.0), centerX3(0.0)
 {
    this->setName("cylinder");
    mRad         = cylinder->getRadius();
@@ -37,9 +34,6 @@ GbCylinder3D::GbCylinder3D(GbCylinder3D* cylinder)
 }
 /*==========================================================*/
 GbCylinder3D::GbCylinder3D(const double& x1a,const double& x2a, const double& x3a, const double& x1b,const double& x2b, const double& x3b, const double& rad)
-   : minX1(0.0)   , minX2(0.0)   , minX3(0.0)
-   , maxX1(0.0)   , maxX2(0.0)   , maxX3(0.0)
-   , centerX1(0.0), centerX2(0.0), centerX3(0.0)
 {
    this->setName("cylinder");
    mLine = new GbLine3D;
@@ -56,9 +50,6 @@ GbCylinder3D::GbCylinder3D(const double& x1a,const double& x2a, const double& x3
 }
 /*==========================================================*/
 GbCylinder3D::GbCylinder3D(GbPoint3D* p1, GbPoint3D* p2, const double& rad)
-   : minX1(0.0), minX2(0.0), minX3(0.0)
-   , maxX1(0.0), maxX2(0.0), maxX3(0.0)
-   , centerX1(0.0), centerX2(0.0), centerX3(0.0)
 {
    this->setName("cylinder");
    mRad = rad;
@@ -69,9 +60,6 @@ GbCylinder3D::GbCylinder3D(GbPoint3D* p1, GbPoint3D* p2, const double& rad)
 }
 /*==========================================================*/
 GbCylinder3D::GbCylinder3D(GbLine3D* line, const double& rad)
-   : minX1(0.0), minX2(0.0), minX3(0.0)
-   , maxX1(0.0), maxX2(0.0), maxX3(0.0)
-   , centerX1(0.0), centerX2(0.0), centerX3(0.0)
 {
    this->setName("cylinder");
    mRad = rad;
diff --git a/src/basics/geometry3d/GbTriangularMesh3D.cpp b/src/basics/geometry3d/GbTriangularMesh3D.cpp
index 13ba661455606ec0761e80971b58758084851654..88819d7b064a0fe76c31683bce6c0fab543a913c 100644
--- a/src/basics/geometry3d/GbTriangularMesh3D.cpp
+++ b/src/basics/geometry3d/GbTriangularMesh3D.cpp
@@ -462,7 +462,7 @@ UbTupleDouble3 GbTriangularMesh3D::calculateCenterOfGravity()
    rSP2 = rSP2/(24.0*volume);
    rSP3 = rSP3/(24.0*volume);
 
-   return UbTupleDouble3(rSP1, rSP2, rSP3);
+   return {rSP1, rSP2, rSP3};
 }
 /*===============================================*/
 UbTupleDouble6 GbTriangularMesh3D::calculateMomentOfInertia(double rhoP)