C#中的get/set怎么用???ms 文档中的例子都错了!

shawls 2002-05-16 07:57:05
C#中的get/set怎么用???ms 文档中的例子都错了!

例如:
public int uid
{
set
{
return 10;
}
get
{
Console.WriteLine("ok");
}
}
是不是也要有一个中间变量存储数据?(和vb6一样,用一个private的存储uid的数据?)

而且,上面的代码我没有办法编译,总是提示出错!

也不知道怎么调用,按照ms文档中的调用方法完全不行
...全文
80 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
tbl820625 2002-05-22
  • 打赏
  • 举报
回复
还有什么问题吗??是不是可以结帖了??
doni 2002-05-22
  • 打赏
  • 举报
回复
“ms 文档中的例子都错了!” 不要枉下断语。
shawls 2002-05-22
  • 打赏
  • 举报
回复

sorry!我忘记了,晚上我回家就结!
shawls 2002-05-22
  • 打赏
  • 举报
回复

sorry!我忘记了,晚上我回家就结!
廖雪峰 2002-05-17
  • 打赏
  • 举报
回复
get
{
//...
return xx; // 最后必须要有return
}
set
{
// 没有返回值,用户设置的值在value变量中
// 可以先检测value是否符合要求 比如要求int必须大于0等
}

可以只有get(只读),只有set(只写)
vision2002 2002-05-17
  • 打赏
  • 举报
回复
set 系统会默认把值赋予value
get 为我们所能取出的
这就实现了封装性
richard_gao 2002-05-17
  • 打赏
  • 举报
回复
应该有个私有变量
private int uid;

public int Uid
{
set
{
uid = value;

}
get
{
return uid;

}
}
tbl820625 2002-05-17
  • 打赏
  • 举报
回复
是啊!
系统会自动产生一个value变量作为输入
shawls 2002-05-17
  • 打赏
  • 举报
回复
有些明白了,

在c#中的set/get中的变量 输入是value把!

不是vb那样:
property set a(byval aa as intger)

end property
是不是?!
earthharp 2002-05-16
  • 打赏
  • 举报
回复
get里也可以做事情的
只不过必须要返回一个值
GumPGZ 2002-05-16
  • 打赏
  • 举报
回复
看来get是必须的,而且必须返回值
而我们可以在set中做很多事情
tbl820625 2002-05-16
  • 打赏
  • 举报
回复
/*C#中的属性更充分地体现了对象的封装性不直接操作类的数据内容而是通过访问器进行访问它借助于get 和set 对属性的值进行读写这在C++中是需要程序员手工完成的一项工作*/


using System;

public class File{
private string s_filename;

public string Filename {
get {
return s_filename;
}
set {
if (s_filename != value) { /*除了使用了abstract 修饰符的抽象属性每个访问器的执行体中只有分号";' 其它所有属性的get 访问器都通过return 来读取属性的值 set 访问器都通过value 来设置属性的值 */
s_filename = value;

}
}
}
}

public class Test{
public static void Main(){
File f = new File();
f.Filename = "myfile.txt";
string s = f.Filename;
Console.WriteLine("s_filename={0}",s);
}
}




以上的程序可以直接编译
dreammaster 2002-05-16
  • 打赏
  • 举报
回复
只是写错了方法

public int uid
{
set
{
Console.WriteLine("ok");

}
get
{
return 10;

}
}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧