结构
结构
struct Student
{
}
和类差不多
不能包含显示的无参构造函数,自己本身有一个构造函数
构造函数中必须给结构中所有字段复制
不能给字段赋初始值
struct Student
{
//结构中不能有显示无参构造函数
//public Student()
//{
//}
//必须给结构中所有的字段赋值
public Student(string name, bool sex)
{
this.name = name;
this.sex = sex;
}
//结构中不能给字段赋初始值
//private string name="张三";
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
private bool sex;
public bool Sex
{
get { return sex; }
set { sex = value; }
}
}class Program
{
static void Main(string[] args)
{
Student stu = new Student();
stu.Name = "张三";
stu.Sex = true;
//结构在赋值的时候 重新赋值了一份
Student s = stu;
s.Name = "李四";
//值类型 会输出 张三 李四 stu.Nme与s.Name在栈中的地址也是不一样的
Console.WriteLine(stu.Name+" "+s.Name);
//类
Stud stuc = new Stud();
stuc.Name = "张";
Stud sc = stuc;
sc.Name = "李";
//类 类是引用类型 把stuc的地址赋给了sc
Console.WriteLine(stuc.Name+" "+sc.Name);
Console.Read();
}
}
class Stud
{
private string name;
public string Name
{
get { return name; }
set { name = value; }
}
}