[英]Not able to specify the public variable class
我的var
关键字有问题
我已经在表单加载时定义了这样的内容
public partial class form1 :form
{
public var a;
private void form1_load(object sender, eventargs e)
{
// i have used "a" like this....
a = abc.members blahhhh blahhhhh
bindingsource1.datasource = a;
datagridview1.datasource = bindingsource1;
}
}
但我在这行上得到了错误
公共变量
类型或名称空间名称“ var”无法定义
我可以定义公共类变量,以便我可以访问该类中的所有方法吗?
var
在C#不同于var
在其它语言; 在C#中,您使用var
来让编译器为您确定某个局部变量的类型,但是您不能使用它来声明字段/属性。
您必须指定实际类型。 我不知道a
是什么,所以我不能告诉您使用哪种类型。
您必须使用具体类型而不是var-例如“ string”,“ int”,...
这是因为“ var”仅是语法暗示。 编译器会干扰具体类型,并插入它而不是var。 在您的情况下,这是不可能的,因为编译器看起来不会像form_load一样,它只会查看“ =”之后的表达式
附带说明:您不应将字段定义为公共字段。 将它们设为私有,并为其定义公共访问者或公共财产。 这样,您就不会将内部实现的细节泄漏给外界,并且如果您想更改此实现,也不会遇到任何问题-稍后会详细介绍。
如果要使其成为公共(而非本地)变量,则必须将其声明为特定类型,例如“字符串”,“ int”或自写类
具有隐式类型var的变量必须在方法范围内声明。
public int a;
我想就足够了。
按照http://msdn.microsoft.com/en-us/library/bb383973.aspx
仅在方法范围内声明的变量可以具有隐式类型var
当您需要linq查询时,可以在运行查询的任何地方(在函数内)分配显式键入的公共变量。 例如,
func()
{
var results = from p1 in phones where p1.name="abc";
MyPublicVariable = results;
}
MyPublicVariable可以枚举的地方。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.