개체의 2D 위치를 저장하는 데 사용되는 간단한 코드의 일부 이상한 동작이 발생합니다.
크기 D이라는 클래스를 만들고 너비와 높이를 Double로 포함했습니다.
CODE :C# 배열 값이 일정한 패턴으로 뒤집 으면
public class SizeD
{
internal Double Width;
internal Double Height;
/// <summary>
/// Creates a new instance of SizeD
/// </summary>
public SizeD(Double Width, Double Height)
{
this.Width = Width; this.Height = Height;
return;
}
}
이 꽤 똑바로 앞을 향해 열린 길을 건너 내가이 클래스에서 일어날 특별한 것을 기대하지 않았다.
더 쉽게 사용할 수 있도록 미리 정의 된 클래스 중 일부가 포함 된 정적 배열이 있습니다.
CODE : 내가 겪고있어
internal static SizeD[] PaperTypeSize = //Converts CM to points.
{
new SizeD(8.5 * 72, 11.0 * 72),
new SizeD(8.5 * 72, 14.0 * 72),
new SizeD(21.0 * (72/2.54), 29.7 * (72/2.54))
};
문제는 크기 내에서 값이 자주 런타임에 플립 것입니다.
1 : 너비 = 너비 및 높이 = 높이.
2 : 너비 = 높이 및 높이 = 너비.
이것은 또한 반복 패턴 (1,2,1,2,1,2) 등으로 발생합니다.
여기에 무슨 일이 일어 났는지 설명해주세요.
시간 내 주셔서 감사합니다.
편집 : 크기가이 값을 읽으려고 할 때 주로 발생 (* (72/2.54 21.0)을, 29.7 * (72/2.54)).
[예제] (http://sscce.org/)를 보여주십시오. –
은 '높이'또는 '너비'를 지정하는 다른 사람입니까? 'private'을 만들어보십시오. –
해당 개체의 멤버 또는 배열 요소에 할당 할 모든 장소를 살펴보십시오. – usr