如何在visual studio中使用propfull 标签 标签小工具?
Class Foo
{
public int regirsterR0
{
get { return R0; }
set { R0 = value; }
}
}
我如何使用其他类的get和set方法?让我们说这个方法在一个名为foo的类中。我如何在goo中使用foo中的get和set?
Class Goo
{
Foo g= new Foo();
g.regirsterR0.Get?????
}
答案 0 :(得分:3)
首先,那些叫做代码段(还有很多其他人!)。这个创建了一个完整的属性(MSDN)定义。
回答你的问题;你只需使用它就好像它是一个字段:
var test = g.Register0; //invokes get
g.Register0 = 2; //invokes set
get
和set
是在访问或分配关联属性时调用的很好的方法抽象。
请注意,您甚至不需要代码段;您可以使用自动属性:
public int RegisterR0 { get; set; } //Properties are PascalCase!
答案 1 :(得分:2)
获取和设置不是值或方法。实际上它们属于控制机制。 (封装原则)
代表:
var variable = g.Register0; // so it is get property. // like a var variable = 5;
g.Register0 = 5; // so it is set property.
答案 2 :(得分:0)
你刚忘了创建方法。 : - )
class Foo
{
private int regirsterR0;
public int RegirsterR0
{
get { return regirsterR0; }
set { regirsterR0 = value; }
}
}
class Goo
{
Foo g = new Foo();
void myMethod()
{
// Set Property
g.RegirsterR0 = 10;
// Get property
int _myProperty = g.RegirsterR0;
}
}
如果你想用Value初始化类Foo的新对象,你可以:
class Foo
{
private int regirsterR0;
public int RegirsterR0
{
get { return regirsterR0; }
set { regirsterR0 = value; }
}
}
class Goo
{
Foo g = new Foo() { RegirsterR0 = 10 };
void myMethod()
{
Console.WriteLine("My Value is: {0}", g.RegirsterR0);
}
}
但通常你不需要使用propfull。如果你使用prop + 2xTAB会很好。例如:
class Foo
{
public int RegirsterR0 { get; set; }
}
class Goo
{
Foo g = new Foo() { RegirsterR0 = 10 };
void myMethod()
{
Console.WriteLine("My Value is: {0}", g.RegirsterR0);
}
}
轻松阅读。