设为首页 加入收藏

TOP

C++返回值
2012-12-10 13:12:22 来源: 作者: 【 】 浏览:303
Tags:返回

    C++(www.cppentry.com)函数返回值:

    (1)正常情况下,函数的参数要复制一份在函数中应用,返回时,再将返回值复制一份,传出去,然后释放掉局部变量.当函数的参数是引用类型的时候,函数就不会复制一份了.

    (2)对于函数中新建的局部对象是不可以返回的,因为返回时是复制了局部对象的首地址返回,但是函数执行完,局部对象要释放,这时那个引用就指向错误的地方了.

    (3)如果指针指向的内存是在函数内的栈上分配的,那么返回时,肯定不行,因为销毁了.

    (4)如果指针指向的内存是在函数外分配的,指针只是作为参数传递进函数内的,那么该指针是可以返回的,因为那块内存没有销毁.

    (5)如果指针指向的内存是在堆上分配的(malloc或者new),那么指针也可以返回,因为堆分配的内存是不随着函数消亡的.

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++四种强制类型转化的区别 下一篇C++对象计数

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: