I having a trouble trying to insert an object from a class that I created to a char. I create a class name Element as part of a bigger program, but when I try to overloading operator= so that i can get in char variable the char I got in the Element obj nothing work...
Element.h
class Element {
private:
    char val;
public:
    Element();
    Element(char newVal); //check input - throw execption
    ~Element();
friend ostream& operator<<(ostream& os, const Element& obj);
void setElement(char newVal);
char getElement();
void operator= (const Element newVal);
void operator= (char newVal);
};
Element.cpp
#include "Element.h"
Element::Element()
{
    val ='.';
}
Element::Element(char newVal)
{
    if (newVal!='X' && newVal!='O'&& newVal!='.'){
        inputExecption error;
        error.what();
    } else{
        val=newVal;
    }
}
Element::~Element()
{
}
void Element::setElement(char newVal)
{
    if (newVal!='X' && newVal!='O'&& newVal!='.'){
        inputExecption error;
        error.what();
    } else{
        val=newVal;
    }
}
char Element::getElement()
{
    return val;
}
ostream& operator<<(ostream& os, const Element& obj)
{
    return os << obj.val;
}
void Element::operator= (const Element Value){
    val = Value.val;
}
void Element::operator= (char newVal){
    if(val != 'X' && val != 'O'){
        inputExecption a;
        a.what();
    }
    val = newVal;
}
So as I said, what i'm trying to do is:
Element x='X';
char c = x; //(c=x.val)
cout<<c<<endl;//Will print X
thx! :)
 
     
    