기존 코드를 읽습니다. 데이터 객체를 정의하기 위해 함께 구조체와 클래스가있는 많은 데이터 객체 파일이 있음을 발견했습니다. 다음과 같이 : 좋은 스타일이라고 생각합니까?클래스 + 구조체는 좋은 코딩 스타일입니까?
In ONE file:
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct LaneDataStruct
{
public ushort red;
public ushort yellow;
public ushort green;
public ushort blue;
public ushort orange;
}
public class LaneData
{
private LaneDataStruct laneDataStruct;
public LaneData(ushort red, ushort yellow, ushort green, ushort blue, ushort orange)
{
this.laneDataStruct.red = red;
this.laneDataStruct.yellow = yellow;
this.laneDataStruct.green = green;
this.laneDataStruct.blue = blue;
this.laneDataStruct.orange = orange;
}
public LaneData(ushort[] values)
{
this.laneDataStruct.red = values[0];
this.laneDataStruct.yellow = values[1];
this.laneDataStruct.green = values[2];
this.laneDataStruct.blue = values[3];
this.laneDataStruct.orange = values[4];
}
public LaneData(LaneDataStruct laneDataStruct)
{
this.laneDataStruct = laneDataStruct;
}
public LaneDataStruct getLaneDataStruct()
{
return this.laneDataStruct;
}
public string toString()
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("LaneData.red=" + this.getLaneDataStruct().red + "\n");
stringBuilder.Append("LaneData.yellow=" + this.getLaneDataStruct().yellow + "\n");
stringBuilder.Append("LaneData.green=" + this.getLaneDataStruct().green + "\n");
stringBuilder.Append("LaneData.blue=" + this.getLaneDataStruct().blue + "\n");
stringBuilder.Append("LaneData.orange=" + this.getLaneDataStruct().orange);
return stringBuilder.ToString();
}
}
당신이 이것을 언급하는 것은 아니지만 실제로 ToString()을 오버라이드해야하고 문자열 작성기를 사용할 때 public toString() 메서드를 추가하는 것은 좋지 않은 스타일이라고 생각합니다. ... AppendFormat()을 사용하는 대신 문자열 연결 ... – OregonGhost