2015-10-05 2 views
-3

Попытка создать класс оператора:Создание класса оператора

class ggg 
    { 
    int a; 
    int b; 
    operator std::string () 
     { 
     return "hello"; 
     } 

    }; 

int main() { 

    ggg g ; 
    std::string s = g; 
    cout<<s; 

} 

и получил ошибку:

'ggg::operator std::string' : cannot access private member declared in class 'ggg' 

Как решить эту проблему?

ответ

4

Все участники классов приватными по умолчанию.

class ggg 
{ 
    int a; 
    int b; 
public: 
    operator std::string () 
    { 
     return "hello"; 
    } 

}; 

должны решать свои проблемы