c/c++基础
文章平均质量分 53
小马喝水
会当凌绝顶,一览众山小
展开
-
内联函数与普通函数、成员函数与静态函数的区别(知识整理)
内联函数与普通函数的区别普通函数在编译的过程中由编译器将函数体放入代码段,在调用函数过程中先进行参数的压栈,然后根据函数的调用地址调用函数,并执行,函数返回后执行出栈操作,这样就会有一个调用的过程,会有时间的消耗。内联函数可以避免这样的消耗,一个函数申明为内联函数,在编译的过程中,编译器会将函数体代码插入函数调用处,这样虽然会增加代码段的空间,但是可以避免时间上的消耗,提高了效率。成员函数与静态函数的区别1、所有函数代码都在程序编译连接时放在一块,称为代码区,无论是静态还是非静态函数都一样,不存在 "构造一原创 2010-08-25 11:57:00 · 1790 阅读 · 1 评论 -
Effective C++学习笔记之“尽量使用初始化而不要在构造函数里赋值”
在对类成员变量初始化的时候,我们很多时候没有注意到,在类构造函数的初始化列表中初始化成员变量,和在构造函数中赋值初始化成员变量的差别是很大的,不仅表现在程序的执行效率上,同时还有语法上的区别。类定义如下: 1: class String 2: { 3: public: 4: String() 5: { 6: cout原创 2011-04-23 18:57:00 · 917 阅读 · 0 评论 -
rapidxml添加属性的内存分配问题
今天在用rapidxml生成xml的时候碰到了一个奇怪的问题rapidxml::xml_nodem_name.c_str(),"");srvnode->append_attribute(doc.allocate_attribute("ip",iter->m_ip.c_str()));srvnode->append_attribute(doc.allocate_attribute("ftppor原创 2012-01-16 15:09:35 · 2341 阅读 · 0 评论