: 나는 연산자 클래스를 필요로하기 때문에"연산자"변수를 만드는 방법은 무엇입니까? (C++) 내가 표현 클래스를 만드는 작업입니다
template<typename T, typename U>
class expression
{
public:
expression(T vala, U valb, oper o){val1 = vala; val2 = valb; op = o;}
operator bool{return(val1 op val2);}
private:
T val1;
U val2;
oper op;
};
당신이 볼 수 있듯이,이 다소 의사입니다. 내 원래의 생각은 모든 가능한 연산자의 배열을 생성하고 문자열을 통해 변환하지만, 그것은 연산자의 단순한 숫자로 인해 작동하지 않을 것입니다 어떻게 2 차원 배열을 통해 이외의 문자열로 변환, 여기서 n [0] [0]은 첫 번째 연산자를 갖고 n [0] [1]은 해당 연산자 문자열을가집니다.
누구든지 표현식 클래스에 연산자 값을 추가 할 제안이 있습니까?
가 왜 타입 정의를 사용 않은 것 : EN은 식을 만드는 방법? –
typedef를 사용하여 OP가 expression 생성자에 전달하는 'oper'유형을 정의합니다. 두 매개 변수를 사용하고 bool을 반환하는 함수에 대한 포인터라고 말하고 있습니다. – ChrisW