UDT (사용자 정의 형식)의 모든 필드를 문자열로 반환하고 싶습니다. 나는이 같은 유형 사용하고자하는 문자열로 반환 된 사용자 정의 형식의 모든 필드를 얻는 방법
public class MyPointF
{
public float X { get; set; }
public float Y { get; set; }
public MyPointF(float x, float y)
{
this.X = x;
this.Y = y;
}
}
:
MyPointF point1 = new MyPointF(10, 20);
System.Console.WriteLine(point1);
이 코드의 반환은 다음과 같아야합니다
{10, 20}
내 UDT 유형은 다음과 같습니다
물론 float 값으로 point1.X
및 point1.Y
에 액세스해야합니다. 이 문제를 해결하는 방법에 대한 어떤 힌트라도 좋습니다.
toString를 오버라이드 (override)를() ... –
는 추가 시도가 정확히 그렇게 할 수있는 클래스에 대한 메소드? point1.Print() ...와 같이 호출하면 print 메소드는 원하는대로 문자열을 반환합니다. – relysis
'System.Drawing' 어셈블리를 사용하지 않으려면 적어도'PointF' struct [참조 소스] (https://referencesource.microsoft.com/#System.Drawing/commonui/System/Drawing/Advanced/PointF.cs)에 구현되어 있습니다. 불변으로 만드는 것이 더 좋을 것이며, 불변 구조로 만드는 것이 더 낫다. 그 외에도 그들은 포인트를 비교하고 더하거나 뺄 수있는 다양한 메소드와 연산자를 구현했습니다. – Groo