c++lambda表达式的效率问题
float test()
{
return 333 * 2.43;
}
for (size_t i = 0; i < 10000000; i++)
{
test();
}
for (size_t i = 0; i < 10000000; i++)
{
auto f = []()->float{return 333 * 2.43; };
f();
}
我这样测出来2者效率居然不相上下(一千万次循环lambda表达式那个只慢了不到5毫秒),我觉得不科学,是不是编译器优化了我的测试代码,不然每次循环都要多一次定义,效率怎么会都不落下,
你们觉得呢
{
return 333 * 2.43;
}
for (size_t i = 0; i < 10000000; i++)
{
test();
}
for (size_t i = 0; i < 10000000; i++)
{
auto f = []()->float{return 333 * 2.43; };
f();
}
我这样测出来2者效率居然不相上下(一千万次循环lambda表达式那个只慢了不到5毫秒),我觉得不科学,是不是编译器优化了我的测试代码,不然每次循环都要多一次定义,效率怎么会都不落下,
你们觉得呢
...全文
相关推荐
cpp-juCi一个轻量级跨平台的CIDE支持C11C14和实验的C17特性
juCi : 一个轻量级、跨平台的C -IDE。支持C 11, C 14, 和实验的C 17特性
c++primer 第五版课后习题答案
c++primer 第五版课后习题答案
leetcode-cpp.7z
LeetCode的所有题目都通过OJ,并且使用C++11,而且编码风格规范,高效,高质量的代码值得阅读
CSharp2CPP——cracked
C#转换为CPP的神器,可以将VS Csharp项目及单C#文件转换为C++文件!
awesome-modern-cpp:现代C ++上的资源集合
awesome-modern-cpp:现代C ++上的资源集合


