2016-12-27 69 views
-2

我有這個頭一個項目我做:類C++錯誤:「虛擬不允許」

#include<iostream> 
#include<exception> 
using namespace std; 

class InvalidException : public exception 
{ 
private: 
    string message; 

public: 


    InvalidException(const char *message) 
    { 
     this->message = message; 
    } 


    virtual const char *catch_the_error const throw() 
    { 
     return this->message.c_str(); 
    } 
}; 

而且它說,虛擬這裏不允許使用,我不知道爲什麼,因爲我例外被公開。有人可以請給我一個答案嗎?

+6

你忘了添加函數參數'()'符,剛過'虛擬爲const char * catch_the_error',之前你的'const'和'拋()'說明符, – WhiZTiM

回答

2

變化

virtual const char *catch_the_error const throw() 

virtual const char *catch_the_error() const throw()