From 5f8754c536c9eb57072968160f2f0bcfb299a689 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Mon, 17 Apr 2017 19:51:28 -0600 Subject: [PATCH] Disallow copying FESystem objects. --- include/deal.II/fe/fe_system.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/include/deal.II/fe/fe_system.h b/include/deal.II/fe/fe_system.h index 73029e2c91..20b7cb3c33 100644 --- a/include/deal.II/fe/fe_system.h +++ b/include/deal.II/fe/fe_system.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 1999 - 2016 by the deal.II authors +// Copyright (C) 1999 - 2017 by the deal.II authors // // This file is part of the deal.II library. // @@ -419,6 +419,12 @@ public: FESystem (const std::vector*> &fes, const std::vector &multiplicities); + /** + * Copy constructor. This constructor is deleted, i.e., copying + * FESystem objects is not allowed. + */ + FESystem (const FESystem &) = delete; + /** * Destructor. */ @@ -960,13 +966,6 @@ private: * This object contains a pointer to each contributing element of a mixed * discretization and its multiplicity. It is created by the constructor and * constant afterwards. - * - * The pointers are managed as shared pointers. This ensures that we can use - * the copy constructor of this class without having to manage cloning the - * elements themselves. Since finite element objects do not contain any - * state, this also allows multiple copies of an FESystem object to share - * pointers to the underlying base finite elements. The last one of these - * copies around will then delete the pointer to the base elements. */ std::vector >, unsigned int> > -- 2.39.5