本方转自:https://blog.csdn.net/wssjn1994/article/details/83749735
#include <iostream> #include <sys/time.h> using namespace std; inline void func() { int a = 0; a++; } int main() { struct timeval start_t, end_t; double n_time = 0.0; gettimeofday(&start_t, NULL); for( int i = 0 ; i < 1000000000 ; i++ ) { func(); } gettimeofday(&end_t, NULL); n_time = ((end_t.tv_sec - start_t.tv_sec)*1000*1000 + (end_t.tv_usec - start_t.tv_usec))/1000.0; cout << "n_time = " << n_time << endl; return 0; }
增加了 inline 关键字的函数称为“内联函数”。内联函数和普通函数的区别在于:当编译器处理调用内联函数的语句时,不会将该语句编译成函数调用的指令,而是直接将整个函数体的代码插人调用语句处,就像整个函数体在调用处被重写了一遍一样。
有了内联函数,就能像调用一个函数那样方便地重复使用一段代码,而不需要付出执行函数调用的额外开销。很显然,使用内联函数会使最终可执行程序的体积增加。以时间换取空间,或增加空间消耗来节省时间
————————————————
版权声明:本文为CSDN博主「wssjn1994」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wssjn1994/article/details/83749735