我看过这样的代码,
方法一
for(int i = 0; i < 200; ++i) {
do_some_stuff(i);
}
方法二
const int max_limit = 200;
for(int i = 0; i < max_limit; ++i) {
do_some_stuff(i);
}
与方法 1
相比,方法 2
有什么优势吗?
最佳答案
用有意义的名称替换整数常量通常是一种很好的做法,所以我认为这是第二种常量的主要优点。但是,如果代码真的很简单,那么额外的行可能只会让它多一行来解析。
也就是说,如果您要替换这样的东西:
for(int i = 0; i < something.size(); ++i) {
do_some_stuff(i);
}
与
const int something_sz = something.size();
for(int i = 0; i < something_sz; ++i) {
do_some_stuff(i);
}
还有一个额外的好处,它让读者和编译器都明白 something.size()
不会因调用 do_some_stuff( i)
.
关于c++ - for 循环中的 const 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31933538/