30是什么意思

本文探讨了编程中所谓的“魔法数字”的概念及其潜在的问题,同时介绍了如何通过使用符号常量来改善代码的可读性和可维护性。
一些如上面代码中的30是一个神奇的数字。一个神奇的数字是一个硬编码的文字(通常是一个数字)在中间的代码,没有任何上下文。30是什么意思?虽然你可能会猜到,在这种情况下,它是每一类学生的最大数量,它不是绝对清晰。在更复杂的程序,它可以是非常困难的推断是硬编码的数字表示,除非有一个评论来解释它。
使用魔法数字通常被认为是不好的做法,因为除了不提供上下文,他们正在使用的,他们带来的问题,如果需要改变的价值。让我们假设学校买新的课桌,让他们提高班级规模从30到35,我们的程序需要反映。考虑下面的程序:


国际maxstudents = numclassrooms * 30;
(30)setmax;
要更新我们的程序使用新的教室大小,我们必须更新常数30至35。但什么叫setmax()?那30和其他30有相同的意思吗?如果是这样的话,应该更新。如果不是,它应该被单独留下,否则我们可能会打破我们的计划在其他地方。如果你做一个全局搜索和替换,你可能无意中更新setmax()争论时,它不应该改变。因此,你必须查看所有的代码的每一个实例的文字30,然后确定它是否需要改变或不。这可能会严重消耗时间(和容易出错)。

幸运的是,更好的选项(符号常量)存在。我们将讨论下一节课的那些。

当声明一个整型变量,不是常量,该变量x的值可以被重新分配,后来。
int x = 5;//声明x整数变量和分配5 x
x = 2;/ / 2现在分配给X,而不是5
x = 4;/ / 4现在分配给X,而不是2
在上面的例子中,x被声明,5被分配给X。我们可以再将另一个数赋给X,然后再改变x的值。
我们可以检查值是否已更改,并将其打印到控制台上:
使用命名空间;
int x = 5;
cout << x << endl;/ / x的值显示在这里是5
x = 2;
cout << x << endl;/ /的值更改为2
x = 4;
cout << x << endl;/现在是4
这个输出:



然而当我们声明一个变量为const,并给它分配一个值,我们不能指定另一个值以后:
const int x = 5;//声明一个常数,X为整数变量,分配5 x
x = 2;/ /编译器错误,因为我们不能将另一个值赋给X
虽然编译出现错误“无法分配到一个const变量,这是误导性的,因为你可以分配(初始化)字面常量到变量只有一次。因此,它的值保持不变,在整个程序。
我也是一个新手学习C++,但我刚刚这个逻辑从亚历克斯所写的过去,随着一些练习在Visual C++ 2010的表达!

没有很多的原因,你需要指定的L前缀。
但让我们说你有两个功能:
void doSomething(int);
void doSomething(长);
如果你叫做(5),你会得到国际版而不是长版。用做(5L)会让你的版本,以长参数。
有可能是其他模糊的例子。
F前缀的使用更为普遍,因为浮点数有奇怪的截断/四舍五入问题。
考虑下面的代码:





浮动F = 0.67;
如果(F = 0.67)
printf(“平等”);
其他的
printf(“不平等”);
这印“不等于”!为什么?当0.67被分配到F时,它被截断为0.670000017。当你将截断值与双值0.67比较时,它不匹配!
这一工程如预期的那样:





浮动F = 0.67;
如果(F = = 0.67f)//注意这里使用F后缀
printf(“平等”);
其他的
printf(“不平等”);

`bins=30` 是在数据可视化中(例如使用 Matplotlib 的 `hist` 函数绘制直方图时)的一个参数,用于指定将数据分组为多少个区间(即“箱子”或“桶”)。 ### 解释: 1. **`bins` 参数**: - 在绘制直方图时,`bins` 参数决定了数据被分割成多少个区间。 - 每个区间代表一个范围,直方图会统计每个区间内的数据点数量,并用柱状图的形式展示出来。 - 如果 `bins=30`,则数据会被分成 30 个等宽的区间。 2. **作用**: - 设置合适的 `bins` 值可以帮助我们更好地理解数据的分布情况。 - 如果 `bins` 值太小,可能会丢失数据细节;如果 `bins` 值太大,则可能导致噪声过多,难以观察整体趋势。 ### 示例代码: 以下是一个使用 Matplotlib 的简单例子,展示如何使用 `bins` 参数: ```python import matplotlib.pyplot as plt import numpy as np # 创建一些随机数据 data = np.random.randn(1000) # 生成1000个标准正态分布的随机数 # 绘制直方图,设置bins为30 plt.hist(data, bins=30, color='blue', alpha=0.7, edgecolor='black') # 添加标题和标签 plt.title('Histogram with bins=30') plt.xlabel('Value') plt.ylabel('Frequency') # 显示图形 plt.show() ``` ### 上述代码解释: - `data = np.random.randn(1000)`:生成 1000 个符合标准正态分布的随机数。 - `plt.hist(data, bins=30, ...)`:绘制直方图,并将数据分为 30 个区间。 - `color='blue'`:设置直方图的颜色为蓝色。 - `alpha=0.7`:设置直方图的透明度为 70%。 - `edgecolor='black'`:设置直方图柱子边缘的颜色为黑色。 运行上述代码后,你将看到一个包含 30 个区间的直方图,展示了数据的分布情况。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值