c++ - 嵌套 if 或直接返回

标签 c++ idioms

我参加了一门 C++ 类(class),我们有一些作业要向老师展示,其中有一些像这样的 if 语句:

if (A != 10)
    return 1;

...snip logic ...
return 12;

他不喜欢这样,并建议我像这样嵌套它,即使有不止一层嵌套:

if (A == 10) {
    ...snip logic ...
    return 12;
} else
    return 1;

他无法真正向我解释为什么他想要这样。所以我的问题是,是否有任何理由嵌套这样的 if 语句?我认为在函数开始时设置一些提前返回的条件既简单又干净。关于为什么这些想法之一更好/更快有什么想法或想法吗?之后编译出来的代码有什么大的区别吗?

最佳答案

当谈到编码风格时,你可以听取意见,但最好是你自己制定风格。第一个解决方案对我来说看起来更干净,更容易阅读,但这毕竟只是一个品味问题。 就性能而言,绝对没有区别。

关于c++ - 嵌套 if 或直接返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10266939/

相关文章:

c++ - -1 和 ~0 有什么区别

ruby - Ruby 中的哈希成语的哈希?

r - 根据键在数据框中汇总值

python - 删除列表中连续重复元素的优雅方法

c++ - 在 C++ 中,为什么我们不能使用 > 和 < 来比较迭代器?

c++ - std::function 的类型推导

c++ - Qthread 调用只运行一次

c++ - 指向MainWindow函数的指针数组导致 “void value not ignored as it ought to be”

c++ - OpenGL:并非所有卡都支持 GL_LINE SMOOTH;甚至不会画线,除非

python - 定义类属性的习惯用法