摘要: 默认参数: 当函数调用中省略了实参时自动使用的一个值。 极大地提高了函数的灵活性。 当参数重新给出使,给定的值会覆盖默认参数,从而不影响函数的正常使用。由于编译器通过查看函数原型来了解函数所使用的参数数目,因此函数原型也必须将可能的默认参数告知程序。 注意:在原型/声明时指定默认参数,而在函数定义是不能指定默认参数。 eg: char * left (const char * str, int n=1); 对于带参数列表的函数,必须从右向左添加默认值,也就是说,要为某个参数设置默认值,则必须为它右边的所有参数提供默认值:eg: int harpo (int n, int m=4, int j= 阅读全文
posted @ 2013-07-18 20:27 sunnie_ 阅读(231) 评论(1) 推荐(0) 编辑
摘要: 新特性包含 内联函数、按引用传递变量、默认的参数值、函数重载(多态) 以及模板函数。内联函数:是c++为了提高程序运行速度所做的一项改进。常规函数与内联函数的区别不在于编写方式,而在与C++编译器如何将他们组合到程序中。程序执行函数调用指令时,程序将在函数调用后立即存储该指令的内存地址,并将函数参数复制到堆栈(为此保留的内存块),跳到标记函数起到的内存单元,执行函数代码(也许还需将返回值放入到寄存器中),然后调回到地址被保存的指令处。来回跳跃并记录跳跃位置需要一定的开销。内联函数的编译代码与其他程序代码“内联”起来了。即:编译器使用相应的函数代码替换函数调用。程序无需跳转,但是代价是:需要更多 阅读全文
posted @ 2013-07-18 16:47 sunnie_ 阅读(259) 评论(0) 推荐(0) 编辑