C#培训2019-10-30 数独问题 老师讲解

本文探讨了代码中MagicNumber的问题,解释了在特定情况下不使用变量存储数字的合理性,并通过实例说明如何通过注释增强代码可读性。同时,讨论了在控件数量固定的情况下使用List而非数组的原因,强调了List在某些场景下相较于数组的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Magic Number问题
1、有些数字不用单独的变量装其实也可以,也不算是MagicNumber,例如ASCII中的96 48之类的。
2、实在有一些数字不想用变量装,可以注释讲清楚。例如下面的代码,2/6、3/5也没有什么独特的含义,只是用来区分区块的。并且呢其他地方也调用不到这个函数,这个时候可以注释清楚作用是什么就行。
	// Change the color of the four corners and the square in the middle
		bool CheckIsNeededChangeGray( int nRow, int nCol )
		{
			// section 1/3/7/9
			if( ( nRow <= 2 || nRow >= 6 ) && ( nCol <= 2 || nCol >= 6 ) ) {
				return true;
			}

			// section 5
			if( nRow >= 3 && nRow <= 5 && nCol >= 3 && nCol <= 5 ) {
				return true;
			}
			return false;
		}
二、List 问题
问:在此题中,老师用的是List装的textbox控件。看到List就会产生疑惑,因为它的特性适合用在动态 的需要增加和减少。然而我们的控件数量是固定的,没有这个需求,为何不用数组呢?
答:可以用数组,用List的原因是,有一些方法比数组好用。且对这题来说,对效能影响较小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值