《C++ Primer Plus》学习笔记3
第8章 函数探幽
========================================================================
1、C++内联函数和常规函数
1)常规函数调用使程序跳到另一个地址(函数地址),并在函数结束时返回。具体过程是执行到函数调用指令时,程序将在函数调用后立即储存指令的内存地址,...
分类:
编程语言 时间:
2014-07-18 21:36:04
阅读次数:
334
OpenCV的基本数据结构CvPoint:表示图像中的点CvPoint2D32f:二维空间中的点CvPoint3D32f:三维空间中的点这些都是结构体,并不是C++语言中的类,所以他们的构造函数就是简单的内联函数。 1 typedef struct CvPoint 2 { 3 int x; ...
分类:
其他好文 时间:
2014-07-16 20:17:07
阅读次数:
171
1. 内联函数? 函数调用是有时间开销的。如果函数本身只有几条语句,执行非常快,而且函数被反复执行很多次,相比之下调用函数所产生的这个开销就会显得比较大。? 为了减少函数调用的开销,引入了内联函数机制。编译器处理对内联函数的调用语句时,是将整个函数的代码插入到调用语句处,而不会产生调用函数的语句。i...
分类:
编程语言 时间:
2014-07-16 18:49:16
阅读次数:
208
为什么对于模板,声明和定义都在写在一起?为什么有的内联函数需要写在头文件中?为什么有时会出现无法解析的外部符号?为什么有时会出现aaa已在bbb中重定义的错误?
分类:
编程语言 时间:
2014-07-13 21:46:28
阅读次数:
292
dp转移方程很容易想 dp[i][j] = min{dp[i - 1][k] + abs(pos[i][j] -pos[i - 1][j]) + cost[i][j]}
n行m列 每次转移扫描m次 共n*m*m 为O(10^7) 1500ms,可以暴力一试。姿势不对就会TLE
其实加上个内联函数求绝对值,同时赋值时候不使用min(a, b) 用G++交 就可以水过
正解是:因...
分类:
其他好文 时间:
2014-07-12 19:55:08
阅读次数:
421
以下是可能产生LNK2001错误的原因: 一.由于编码错误导致的LNK2001。 1.不相匹配的程序代码或模块定义(.DEF)文件能导致LNK2001。例如, 如果在C++ 源文件内声明了一变量“var1”,却试图在另一文件内以变量“VAR1”访问该变量,将发生该错误。 2.如果使用的内联函数...
分类:
其他好文 时间:
2014-07-11 22:40:20
阅读次数:
183
五、显式内联
函数代码可被直接集成到调用函数中,而非产生独立的函数目标和单个调用。可显式地使用 inline 限定符来指示编译器这么做。根据 section 6.7.4 of C standard inline 限定符仅建议编译器使得”调用要尽可能快”,并且“此建议是否有效由具体实现定义”
要用内联函数优点,最简单的方法是把函数定义为 static ,然后将定义放入头文件。...
分类:
其他好文 时间:
2014-07-10 22:43:02
阅读次数:
268
引言:调用函数时,通常会因为建立调用、传递参数、跳转到函数代码并返回等花费掉一些时间,C语言的解决办法是使用类函数宏。在C99中,还提出了另外一种方法:内联函数。
内联函数:把函数变为内联函数将建议编译器尽可能快速地调用该函数,至于建议的效果则由实现来定义。因此,使函数变为内联函数可能会简化函数的调用机制,但也可能不起作用。内联函数是通过编译器来实现的,而宏则是在预编译的时候替换...
分类:
编程语言 时间:
2014-07-03 13:48:57
阅读次数:
252
建议和规则建议:用内联函数或静态函数代替与函数相似的宏在宏参数名两边加上括号宏替换列表应该加上括号应该使用typedef定义编码类型不要复用标准头文件名理解连接标记或执行字符串化时的宏替换把头文件放在包含防护条件中避免使用连续的问号保证头文件名唯一不要用不安全的函数替换安全函数在一个do-while...
分类:
其他好文 时间:
2014-07-03 11:38:46
阅读次数:
258
对任一容器C,代码if (c.size()
== 0)本质上与if (c.empty())是等价的。既然如此,为什么要偏向于某一种形式呢,尤其是考虑到empty()通常被实现为内联函数,并且它所做的仅仅是返回size()是否为0。
理由很简单:empty()对所有的标准容器都是常数时间操作,而对一些list实现,size()耗费线性时间。
原因:在所有的标准容器中,只有l...
分类:
其他好文 时间:
2014-06-26 08:10:47
阅读次数:
266