C++초짜가 질문좀 할게요.

jinsu421의 이미지

복학해서 자료구조를 다시 보고있는데 예제에는 선언부만 있어서 이거 실행이안됩니다.
그런데 아예 객체를 어떻게 설정해야 될지도 모르겠고 메인없이 써잇는 코드라 타이핑죽어라했더니 빌드조차 안돼서 막막합니다.
도대체 메인함수부분을 어떻게 채워넣어야되는걸까요? 객체지향 너무어렵습니다 ㅠㅠ

#include <iostream>
using namespace std;
 
class Complexity {
public:
	Complexity ();
	Complexity (int,int);
	Complexity AddTo (Complexity);
	Complexity operator += (Complexity c);
	void print();
private:
	int myReal;
	int myImaginary;
};
Complexity::Complexity()
{
	myReal = 0;
	myImaginary = 0;
}
Complexity :: Complexity(int r,int i)
{
	myReal = r;
	myImaginary = i;
}
Complexity Complexity::AddTo (Complexity c)
{
	myReal += c.myReal;
	myImaginary += c.myImaginary;
	return Complexity (myReal,myImaginary);
}
 
Complexity Complexity::operator+=(Complexity c)
{
	return AddTo(c);
}
void Complexity::print()
{
	cout<<myReal;
	if(myImaginary >=0)
		cout << '+';
	cout<< myImaginary << 'i'<<endl;
}

bbaijang의 이미지

int main() {
Complexity *c = new Complexity(1,1);

Complexity d(2,3);

// 아래 처럼 오퍼레이터 정상 동작하는 지 보세요.
c += d;

//
c.AddTo(d);

// 위에 오퍼레이터 잘 동작했는지도 확인해 보세요.
c.print();

delete c;
return 0;
}

jinsu421의 이미지

하다보니까 c가 근데 *형 변수로 만들어져서 그런가
c.아니라 c->형태로 참조해서 쓰라그래서 했더니 잘되네요.

댓글 첨부 파일: 
첨부파일 크기
Image icon a.PNG6.35 KB