Tag: 参数传递

在C中传递数组和数组指针到函数中的区别

C中两个函数有什么区别? void f1(double a[]) { //… } void f2(double *a) { //… } 如果我要在一个相当长的数组上调用这些函数,这两个函数的行为是否会有所不同,他们会在栈上占用更多的空间吗?

在C#中通过引用或值传递对象

在C#中,我一直认为非原始变量是通过引用传递的,原始值是通过值传递的。 所以当传递给一个方法的任何非原始对象时,对该方法中的对象做的任何事情都会影响被传递的对象。 (C#101的东西) 但是,我注意到,当我传递一个System.Drawing.Image对象,这似乎并不是这样的情况? 如果我将system.drawing.image对象传递给另一个方法,并将图像加载到该对象上,那么让该方法超出范围并返回调用方法,该图像不会加载到原始对象上? 为什么是这样?