을 decimal
또는 double
으로 실행할지 여부를 프로그램에서 결정할 수는 없지만이를 해결하는 방법은 없습니다. 내 코드, 마지막 두 번째 라인은 내가 염려하는 것입니다. 정수에를 호출하면 아무런 영향을 미치지 않기 때문에다음 메서드 또는 속성 사이에 모호한 호출이 있습니다 (반올림하여 소수 및 이중)
ArrayList topp1 = new ArrayList();
int toppcount = 0;
foreach (Control cb in GroupBoxH1T.Controls)
{
CheckBox cb1 = cb as CheckBox;
if (cb1.Checked == true)
{
toppcount++;
topp1.Add(cb1.Text);
}
}
if (cbhwchoice.Checked == false)
{
ArrayList topp2 = new ArrayList();
foreach (Control cb in GroupBoxH2T.Controls)
{
CheckBox cb1 = cb as CheckBox;
if (cb1.Checked == true)
{
toppcount++;
topp2.Add(cb1.Text);
}
}
toppcount = Math.Round((toppcount/2,MidpointRounding.AwayFromZero);
}
흥미 롭습니다, 감사합니다! – Wilson
'toppcount = Math.Round (toppcount/2m, MidpointRound.AwayFromZero);'를 사용하면 훨씬 단축 할 수 있습니다. '2m'은 필요한 모든 캐스트를 발생시킵니다. – SimpleVar