gpt4 book ai didi

c++ - 什么是 "symbolic constants"和 "magic constants"?

转载 作者:可可西里 更新时间:2023-11-01 17:03:27 27 4
gpt4 key购买 nike

在 Bjarne Stroustrup 的 A Tour of C++ 中,每章末尾都列出了一些建议。在第一章的结尾,其中一个写道:

Avoid ‘‘magic constants;’’ use symbolic constants;

什么是魔法常量和符号常量?

最佳答案

somethingElse = something * 1440;           // a magic constant
somethingElse = something * TWIPS_PER_INCH; // a symbolic one

第一个是魔法常量的例子,它除了它的值之外没有传达任何其他信息。

后者更有用,因为意图很明确。

如果您有多个具有相同值的事物,使用符号常量也有很大帮助:

static const int TWIPS_PER_INCH = 1440;
static const int SECTORS_PER_FLOPPY = 1440; // showing my age here :-)

这样,如果其中一个发生变化,您可以轻松识别代码中的哪个 1440 必须更改。由于神奇的 1440 散布在整个代码中,您必须在多个地方更改它找出哪些是缇,哪些是扇区。

关于c++ - 什么是 "symbolic constants"和 "magic constants"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43950998/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com