C#数组元素是引用吗?
evlon 2006-08-24 03:36:06 大家看一下,下面的程序.如果我想让msg1 == msg2 ,应该如何写呀?
在C++中,我可以声明引用,我本想,在C#是就是引用.可是为什么不行呢?
请高手指教..
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using System.Net;
using System.IO;
using System.Web;
using System.Net.Sockets;
using System.Runtime.InteropServices;
using System.Threading;
using System.Windows.Forms;
public class ValueData
{
private object data1;
private object data2;
private object data3;
public object Data1
{
get { return data1; }
set { data1 = value;}
}
public object Data2
{
get { return data2; }
set { data2 = value;}
}
public object Data3
{
get { return data3; }
set { data3 = value;}
}
}
public class MainEntry
{
public static void Main(string[] arg)
{
ValueData vd = new ValueData();
object[] vals = {(object)vd.Data1,(object)vd.Data2,(object)vd.Data3};
for(int i = 0;i < vals.Length; ++i)
{
vals[i] = new object();
}
string msg1 = string.Format("{0}\n{1}\n{2}\n",vd.Data1,vd.Data2,vd.Data3);
System.Diagnostics.Debug.Assert(msg1.Trim() == "");
MessageBox.Show(msg1);
string msg2 = string.Format("{0}\n{1}\n{2}\n",vals[0],vals[1],vals[2]);
System.Diagnostics.Debug.Assert(msg1.Trim() != "");
MessageBox.Show(msg2);
}
}