几天前,我试图减去10000 std::numeric_limits<float>::max(),我只是发现价值根本没有变化,无论我减去什么价值.事实上,似乎所有浮点类型都有这种行为.
例如(在g ++和msvc上),这个没有通过(好):
int i = std::numeric_limits<int>::max();
assert(i == i - 10000); // Doesn't pass
Run Code Online (Sandbox Code Playgroud)
但是这个(?):
float f = std::numeric_limits<float>::max();
assert(f == f - 10000.f); // Pass
Run Code Online (Sandbox Code Playgroud)
我甚至试图直接分配最大值(在这种情况下为3.40282e + 38),但它似乎没有改变任何东西.此外,它似乎与任何足够高的值完全相同.有人可以向我解释为什么会这样做吗?谢谢.
请考虑以下代码:
主表单模板模型:
public partial class CustomForm : Form
{
public CustomForm()
{
InitializeComponent();
DoubleBuffered = true;
}
}
Run Code Online (Sandbox Code Playgroud)
具体表格模板型号:
public partial class PopupForm : CustomForm
{
public PopupForm()
{
InitializeComponent();
BTN_Maximize.Hide();
}
}
Run Code Online (Sandbox Code Playgroud)
派生形式:
public partial class SiteAccess : CustomForm
{
public SiteAccess()
{
InitializeComponent();
this.SizeGripStyle = SizeGripStyle.Show;
}
}
Run Code Online (Sandbox Code Playgroud)
(主要形式)
+
public partial class Edition : PopupForm
{
public Edition()
{
InitializeComponent();
}
}
Run Code Online (Sandbox Code Playgroud)
+
public partial class Preferences : PopupForm
{
public Preferences()
{
InitializeComponent();
}
}
Run Code Online (Sandbox Code Playgroud)
+ …
我理解指针非常好,我理解它们的很多用途.但是,我从来没有想过在数组中使用指针.我知道怎么做,但我不明白为什么用这个直接操纵数组.我只想知道我只能使用数组中的指针.谢谢.