banner

hing_expensive(); if (mostly_true) { do_more_stuff(); even_more(); } }

这个循环中的语句很明显会被执行 100 万次,因此它是热点语句。看起来你需要花点精力去优化。

tips

评估嵌套循环中的循环次数

当一个循环被嵌套在另一个循环里面的时候,代码块的循环次数是内层循环的次数乘以外层循环的次数。例如:

for (int i=0; i<100; ++i) { for (int j=0; j<50; ++j) { fiddle(a[i][j]); } } 在这里,代码块的循环次数是 100*50=5000。 生 binder2nd 函数适配器实例。 运行结果: 分析:此例中 bind2nd 返回 binder2nd 函数对象,它的函数运算体调用 greater( x, 40),即实现了将 40 绑定到 greater的第 2 个参数中。需要注意的是,这里并没有显式使用到 binder2nd,而是由 bind2nd 自动推导出 binder2nd 的类型,并传递给 find _if。例 10-18 和例 10-19 同样隐式使用了对应的适配器。 2.指针函数适配器pointer_to_unary_function和pointer_to_binary_function面介绍。就现在而言,将std::cout视为在程序中用于处理输出的对象的名称,而将std::cin视为用于处理用户输入的对象即可。 在第5行,std::cout后面是<<,它被称为输出重定向运算符。运算符是代码行中根据某种信息执行操作的字符。运算符<<显示它后面的信息(仅限当前行)。在第5行,文本“Solidum petit in profundis!n”用双引号括起了。这将在屏幕上显示一个字符串,末尾的特殊字符n 表示换行符,导致接下来的程序输出从下一行开始。 在第6行,程序返回整数0。程序运行完毕后,操作系统将收到这个值。通常,程序返回0表示它运行成功,而其他数字表示出现了