Synchronization of old projects
Part1
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,115 @@
|
||||
using System;
|
||||
namespace Lesson
|
||||
{
|
||||
#region 知识点一 基本概念
|
||||
//结构体 是一种自定义变量类型 类似枚举需要自己定义
|
||||
//他是数据和函数的集合
|
||||
//在结构体中 可以声明各种变量和方法
|
||||
|
||||
//作用:用来表现存在关系的数据集合 比如用结构体变现学生 动物 人类等等
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
#region 知识点二 基本语法
|
||||
//1.结构体一般卸载 namespace语句块中
|
||||
//2.结构体关键字 struct
|
||||
//3.结构体中声明的变量不能直接初始化
|
||||
|
||||
struct StructName//可以是中文的
|
||||
{
|
||||
//第一部分
|
||||
//变量(不能直接初始化
|
||||
|
||||
//第二部分
|
||||
//构造函数(可选
|
||||
|
||||
//第三部分
|
||||
//函数(一般情况下都有
|
||||
}
|
||||
//注意:结构体名字是帕斯卡命名法
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
#region 知识点三 实例
|
||||
struct Student
|
||||
{
|
||||
//变量
|
||||
//年龄,性别,学号,姓名
|
||||
#region 知识点五 访问修饰符
|
||||
//修饰结构体中变量和方法 是否能够被外部使用
|
||||
//public 公共的 可以被外部访问
|
||||
//private 私有的 只能在内部使用
|
||||
//默认不写 为private
|
||||
#endregion
|
||||
public int age;
|
||||
public bool sex;
|
||||
public int number;
|
||||
public string name;
|
||||
|
||||
|
||||
//结构体中可以包含其他结构体,但不能是本结构体
|
||||
//构造函数
|
||||
#region 知识点六 结构体的构造函数
|
||||
//基本概念
|
||||
//1.没有返回值
|
||||
//2.函数名必须和结构体名相同
|
||||
//3.必须有参数
|
||||
//4.如果声明了构造函数 那么必须在其中队所有变量数据初始化
|
||||
//5.结构体和构造函数可以重载,但是注意第4点
|
||||
|
||||
//构造函数一般用在外部,方便初始化使用的
|
||||
public Student(int age, bool sex, int number, string name) //必须有参数
|
||||
{
|
||||
//新的关键字this,代表自己
|
||||
this.age = age;//this.age是构造函数中写的age,而后面的age是结构体上面的声明的age
|
||||
this.sex = sex;
|
||||
this.number = number;
|
||||
this.name = name;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
//函数
|
||||
//表现这个数据结构的行为
|
||||
//注意:在结构提中的方法,目前不需要加static关键字
|
||||
public void Speak()
|
||||
{
|
||||
//在函数中可以直接使用结构体内部声明的变量
|
||||
Console.WriteLine("我的名字是{0},今年{1}岁",name,age);
|
||||
}
|
||||
//函数可以根据需求写任意个
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
class Program
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
#region 知识点四 结构体的使用
|
||||
//变量的声明
|
||||
//变量类型 变量名;
|
||||
Student s1;
|
||||
//如果没写后private打s1.是tab不补齐的
|
||||
s1.age = 18;
|
||||
s1.sex = false;
|
||||
s1.number = 123;
|
||||
s1.name = "HKK";
|
||||
s1.Speak();
|
||||
|
||||
Student s2 = new Student(8,true,321,"KKH");
|
||||
//上面的代码可以替代下面的代码
|
||||
//s2.age = 8;
|
||||
//s2.sex = true;
|
||||
//s2.number = 321;
|
||||
//s2.name = "KKH";
|
||||
s2.Speak();
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user