Compilation error - no matching function for call to 'Exception::Exception(Exception)'
<p>I can not solve this problem for a while. I would be glad for some advice.</p>

<p>When I try to throw an exception (self created one in Java style) </p>

<pre><code>throw Exception ();
</code></pre>

<p>compiler make a protest:</p>

<blockquote>
  <p>DataTypes/Date.cpp:24: error: no matching function for call to `Exception::Exception(Exception)'
  DataTypes/Date.cpp:24: error:   in thrown expression</p>
</blockquote>

<p>It does not work with any of the constructors I have. What is the problem?
Here is header file of the Exception:</p>

<pre><code>class Exception
{

public:
 Exception(void);
    explicit Exception(const char *);
    explicit Exception(const Exception &amp;);
    Exception(const char *, const Exception &amp;);
 virtual ~Exception();

 const char * message;
 const Exception &amp; cause;

};
</code></pre>

<p>I should mention that when I leave just implicit constructor and the second one it works.</p>

<p>Thank you for any help.</p>
