我有一个结构结构和属性
namespace lib
{
public struct strct_Test
{
int a;
string b;
}
}
有些地方比我做
using lib;
class one
{
private strct_Test var;
public strct_Test Var
{
get {return var;} // or should it be like return var.a; return var.b;
set {var = value;} // or should it be like var.a = value; var.b = value
}
}
所以任何人可以指导什么在代码中的注释中提到这里正确的做法?
你意识到,'返回var.a;返回var.b;'与'return var;'有很大的区别,从某种意义上讲,返回值来自对象,另一个返回整个对象? – Shark
你的问题不清楚,因为你的第一种类型是无用的 - 它有私人领域没有任何访问。你*不能*使用'one'类中的'var.a'。此外,我强烈建议您开始遵循C#的命名约定,了解自动实现的属性,并避免调用* anything *'var'(这是一个上下文关键字) –
这取决于您想要对属性执行什么操作。 ..它会成为你的用户界面(绑定)的一部分,或将其他一些类使用你的setter设置结构 – WiiMaxx