Boost logo

Boost Users :

From: Leon Mergen (leon_at_[hidden])
Date: 2005-09-01 08:53:27


Hello,

Today I upgraded to boost 1.33, which broke the 'program options' part
of my application. Copying of a
boost::program_options::options_description is not allowed anymore,
because of a const unsigned int m_line_length, defined at line 211 of
<boost/program_options/options_descriptions.hpp> :

=====================================================================
Compiling: Configurator.o
Configurator.cpp: In member function `
   boost::program_options::options_description&
   boost::program_options::options_description::operator=(const
   boost::program_options::options_description&)':
Configurator.cpp:13: error: non-static const member `const unsigned int
   boost::program_options::options_description::m_line_length', can't
use
   default assignment operator
make: *** [Configurator.o] Error 1
=====================================================================

I wonder, why is this not allowed anymore (except the obvious answer
that a const variable cannot be assigned a new value) ? What is the
"new", preferred way to copy these objects ?

Right now, I've fixed it by removing the const qualifier of that
variable, but I can see that's not the preferred way... :)

Regards,

Leon Mergen


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net