我一直试图找出什么时候在堆栈上分配的东西,我无法弄清楚如何在堆栈上分配数组(或者更确切地说是其中的值);
在这个例子中:
public void foo()
{
int bar[] = new int [10];
}
Run Code Online (Sandbox Code Playgroud)
将在堆上分配10个int结构,只有指向它们的指针才会在堆栈上,对吗?
如何使固定大小的数组进入堆栈?如果我使用的是我定义的结果怎么办?
如果我想将数组大小作为参数传递给函数怎么办?
据我所知,当调用函数时,如果在调用函数时已知大小,则在堆栈上获取任意大小的数组应该没有问题.
我是否应该为此烦恼?据我所知,在堆栈上获取这个固定大小的数组会提高性能,因为没有完成堆分配.