以传值方式传参数引发的栈溢出

Posted 力为

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以传值方式传参数引发的栈溢出相关的知识,希望对你有一定的参考价值。

考虑到性能问题,如果是自定义的class对象,一般都会以传引用/地址的方式传递参数。如果按照这样的信条写程序,就不会遇到下面遇到的问题了。


最近在帮一个朋友查看一个bug,现象是这样的:执行一个函数的时候,抛出一个stack overflow的异常。在函数体的第一行设置端点,执行的时候,程序停止响应。在函数外部设置断点,step in根本就进不去。细一看,这个函数以传值的方式传入了一个自定义的对象,再看这个对象,有若干的数据变量。那就改成传引用吧,虽然从来都没有遇到过传递参数可以引起stack异常。结果真的很灵!



以上是关于以传值方式传参数引发的栈溢出的主要内容,如果未能解决你的问题,请参考以下文章

传值与传地址

壹拾贰

请问:delphi 中数组作为函数的参数传递,这样传过去的是地址,怎样把数组作为值传递过去?

前端ajax异步传值以及后端接收参数的几种方式

各种传值方式

[Layui]表单传值到后端的两种方式