我有这样二个类, CData保存的是从文件中读取的数据.
CDraw是用于在屏幕上显示CData的类.
我想在CDraw中存放CData m_clsData; 这样可以方便的调用CData中的数据了.
但是问题来了, 在CDraw外已经有一个CData了, 我想m_clsData只要存放CData的引入就可以了, 要不然再创建一个CData就太浪费内存了. CData是通过CDraw的InitData(ref CData clsdata)来传递的. 我想问一下, 在CDraw中如果用m_clsData = clsdata; 这样的语句, 但存的是引用吗? 如果这样是错误的, 应该如何声明这个变量, 谢谢!
CDraw是用于在屏幕上显示CData的类.
我想在CDraw中存放CData m_clsData; 这样可以方便的调用CData中的数据了.
但是问题来了, 在CDraw外已经有一个CData了, 我想m_clsData只要存放CData的引入就可以了, 要不然再创建一个CData就太浪费内存了. CData是通过CDraw的InitData(ref CData clsdata)来传递的. 我想问一下, 在CDraw中如果用m_clsData = clsdata; 这样的语句, 但存的是引用吗? 如果这样是错误的, 应该如何声明这个变量, 谢谢!
对于引用类型,使用ref关键字是多余的。
所有引用类型在赋值时都是传递其引用,而不是其值的。直接用公共字段来定义就好了:
public CData Data;如果要设置为只能设置,用属性来定义:
public CData Data { protected get; set; }