#include "StdAfx.h"
#include "Punkt.h"


Punkt::Punkt()
{
}

Punkt::Punkt(int x, int y)
{
	this->x = x;
	this->y = y;
}

int Punkt::X::get()
{	
	return x;
}

void Punkt::X::set(int x)
{
	this->x = x;
}

int Punkt::Y::get()
{	
	return y;
}

void Punkt::Y::set(int y)
{
	this->y = y;
}

void Punkt::zeigePunkt()
{
	Console::WriteLine("x-Koordinate: " + x);
	Console::WriteLine("y-Koordinate: " + y);
}

Punkt^ Punkt::operator+(Punkt^ andererPunkt)
{
	Punkt^ SumKo = gcnew Punkt();
	SumKo->x = this->x + andererPunkt->x;
	SumKo->y = this->y + andererPunkt->y;
	return SumKo;
	//return gcnew Punkt(x + andererPunkt->X, y + andererPunkt->Y);	
}

Punkt^ Punkt::operator+(int koo)
{
	Punkt^ SumKo = gcnew Punkt();
	SumKo->x = this->x + koo;
	SumKo->y = this->y + koo;
	return SumKo;
}

Punkt^ Punkt::operator--()
{
	x--;
	y--;
	return this;
}

Punkt^ Punkt::operator--(int)
{
	Punkt^ KopieAlt = gcnew Punkt(this->x, this->y);
	x--;
	y--;
	return KopieAlt;
}

bool Punkt::operator==(Punkt^ andererPunkt)
{
	if (x == andererPunkt->x && y == andererPunkt->y)
		return true;
	else
		return false;
}

