c# – 本地变量声明问题
发布时间:2020-12-16 00:19:57 所属栏目:百科 来源:网络整理
导读:我收到以下错误: Cannot use local variable ‘dob’ before it is declared 这是我的实施 public class Person { ... public string dob { get; set; } ... public int getAge() { DateTime origin = DateTime.Parse(dob); return DateTime.Today.Year - o
我收到以下错误:
这是我的实施 public class Person { ... public string dob { get; set; } ... public int getAge() { DateTime origin = DateTime.Parse(dob); return DateTime.Today.Year - origin.Year; } public string getFormattedDoB() { DateTime origin = DateTime.Parse(dob); string dob = origin.ToString("d"); return dob; } } 我不知道该怎么做,因为它抱怨它在getFormattedDoB()中使用dob而不是在它之前的getAge()中.如果有人能够对此有所了解,那就太棒了 解决方法
您已在getFormattedDoB中声明了一个名为dob的局部变量.编译器无法区分它与成员dob之间的区别.尝试添加“this”,表示成员变量而不是本地变量:
DateTime origin = DateTime.Parse(this.dob); 更好的是,不要对局部变量使用相同的名称. 编辑:除非您确实打算设置成员变量而不是创建新变量.在这种情况下,删除安德鲁建议的“字符串”. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |