关于Ruby 方法是按值传递还是按引用传递

Python012

关于Ruby 方法是按值传递还是按引用传递,第1张

值传递仅仅传递的是

引用传递,传递的是内存地址,修改后会改变内存地址对应储存的值。

数组来举例就最清楚了,例如我们定义一个数组a[]={1,2}

那么a[0]=1,a[1]=2。

如果我们把数组a里的元素值作为参数传递,实际上只是进行了值传递,对数组本身没有影响

如果我们把 数组a的指针作为参数传递,那么假如处理的函数就可以直接修改数组a里的值。

代码实例:(只是写个大概的逻辑,语法可能有错误)

main()

{

int a[]={1,2}

test(a)

printf(a[0]) //此处打印的值是3, 这就是引用传递。

}

public void test(int b[])

{

b[0]=3

}

int jimmy//声明一个int类型变量

string ruby//string类型变量

jimmy = Console.Read()//接受输入的字符,转为int类型返回给jimmy

Console.Write(jimmy)//输出jimmy的值

Console.WriteLine(jimmy)//输出jimmy的值并换行

Console.WriteLine((char)jimmy)//转换为字符型之后输出jimmy的值

ruby = Console.ReadLine()//输入一个字符串赋值给 ruby

Console.Write(ruby)//输出ruby

Console.WriteLine(ruby)//输出ruby字符串并换行

Console.ReadLine()//等待输入