|
|
1
2
因为它们的评估可能有副作用,也可能没有副作用,所以在维护代码的过程中,充其量会有困难——在有副作用的情况下,评估肯定会发生,在其他情况下,它的发生与否由编译器决定。这就给您留下了一个以松散控制方式运行的程序。 所以即使你不喜欢宏,你也应该做出明智的决定。要么使用宏,然后预处理器消除整个构造,而不计算参数;要么使用内联函数,然后编译器为您决定。 |
|
|
2
4
即使编译器优化了内联VERIFY函数,也不意味着它不会调用生成bool参数的函数。 qu ASSERT不调用在发布版本中传递给它的函数的原因是,它是一个宏,根本不能代替函数调用,因此没有什么可以优化的。 |
|
|
3
0
想象一下这个代码:
乐观主义者可以忽略对
|
|
|
4
0
在优化过程中,编译器仍然必须尊重手头代码的可观察效果。这意味着它必须保持
然而,优化对你来说并不重要
|
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |