title: Way To Prevent To Redefine Constructor Definitions
body: <p>I am writing a custom Exception class, with some additional features over the <code>std::exception</code> one. I added a custom constructor <code>Exception(std::string details) : details(details) {}</code> to my Exception class. </p>
  
  <p>Later, when I extend the <code>Exception</code> class, with the class <code>FileNotAccessibleException</code>, and throw it, I get a compile error saying <code>no matching function for call to ‘FileNotAccessibleException::FileNotAccessibleException(std::basic_string&lt;char&gt;)’</code> When I then add a method <code>FileNotAccessibleException(std::string details) : Exception(details) {}</code> to my class, it does work fine. </p>
  
  <p>Is there no way to make the constructor work, without having to redefine the constructor for all my classes? </p>