A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 苟于伟 中级黑马   /  2013-3-22 16:19  /  1261 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. namespace _06结构
  2. {
  3. enum Gender
  4. {
  5. 男,女
  6. }
  7. public struct data //定义一个名称叫data的结构
  8. {
  9. public string name;//结构的成员
  10. public Gender sex;//结构的成员
  11. public int age;//结构的成员
  12. }

  13. class Program
  14. {
  15. static void Main(string[] args)
  16. {
  17. data data1;
  18. data1.name = "小明";

  19. data1.age = 26;
  20. data1.sex = Gender.男;
  21. Console.WriteLine("这位同学的名字是{0},年龄{1}岁性别:{2}", data1.name, data1.age,
  22. data1.sex);


  23. data data2;
  24. data2.name = "小红";

  25. data2.age = 25;
  26. data2.sex = Gender.女;
  27. Console.WriteLine(data2);
  28. Console.WriteLine("这位同学的名字是{0},年龄{1}岁,性别:{2}", data2.name, data2.age,
  29. data2.sex);
  30. Console.ReadKey();

  31. }
  32. }
  33. }
复制代码
为什么我编写出来的会出现一个错误提示( 可访问性不一致: 字段类型“_06结构.Gender”比字段“_06结构.data.sex”的可访问性低 D:\C#基础\039\代码\基础班第06天\06结构\Program.cs 15 23 06结构)
我的代码和苏老师的代码对了一下,我觉得没有出入啊,可就是会提示错误。请高手指点。——————谢谢!

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

5 个回复

倒序浏览
这个在视频中好像老师讲解过
首先 要是同类型或者级别的 就可以访问 ,否则代码前面要加修饰词,因为你的结构前有public,所以你的enum Gender 前最好也加一个 public 或者 你创建的结构前不要public

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
访问级别的事儿,建议都加上public ,因为默认的修饰符是internal或private的吧,不确定的话就加上public
回复 使用道具 举报
张振 发表于 2013-3-22 16:39
这个在视频中好像老师讲解过
首先 要是同类型或者级别的 就可以访问 ,否则代码前面要加修饰词,因为你的结 ...

是,老师是讲过,可我按照老师的例子搬过来的,老师能运行,我的i不能。我要在哪里加public,我在枚举前加试过,不报错,可把项目名称也显示出来了。
回复 使用道具 举报
苟于伟 发表于 2013-3-23 14:14
是,老师是讲过,可我按照老师的例子搬过来的,老师能运行,我的i不能。我要在哪里加public,我在枚举前 ...

你把结构前的public 去掉也可以
回复 使用道具 举报
在枚举前面加上修饰符public,因为结构是用public修饰的
  • public enum Gender
  • {
  • 男,女
  • }
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马