关于函数输入输出参数为XML文档格式的疑问,形参就是实参?
今天调试一个c#的函数,突然发现输入参数为Xelement类型时,这个参数同时可以传出!!!!
程序如下:
private void Main()
{
XElement firstLevel = new XElement("AAAA");
test(XElement firstLevel);
}
private test(XElement ttt)
{
ttt.add(new XElement("BBBB");
}
程序运行之后,firstLevel 的内容变成了
<AAAA>
<BBBB/>
</AAAA>
这是神马情况???子函数的形参可以变成实参?是XML的特殊之处?不用ref 关键字进行修饰?
------解决方案--------------------
引用类型,传的是地址,等同于 ref
------解决方案--------------------
------解决方案--------------------如果 firstLevel 是在函数外声明的,那在其它地方访问也是修改后的结果