枚举类 enum,结构体类 struct
1、枚举类型的值,直观易于理解,见词知意。
格式:
enum 枚举类名:值类型
{
值1,
值2,
值n
}
每个值默认(省略“:值类型”)以int型数据存储,从0开始。
使用格式:枚举类名 变量=枚举类名.值
namespace demo
{
enum GameState//枚举类GameState(类名)
{
Start,//每个值默认以int型数据存储,从0开始。修改存储类型格式:enum GameState:byte
Pause,//对应1
Sucess,//对应2
Failed//对应3
}
class Program
{
public static void Main(string[] args)
{
GameState state = GameState.Start;//定义枚举类变量state
if (state == GameState.Start) {//见词知意
Console.WriteLine("游戏处于开始状态");
}
Console.ReadKey();
}
}
}
2、结构体类,可以达到整体与局部的效果,即各种局部属性,构成整体对象。思路清晰明了
格式:
struct 结构体类名
{
变量1;
变量2;
变量n;
}
使用格式:
结构体类名 变量;
变量.变量n=赋值;
3、枚举与结构体的使用时机:具体值,用枚举。变量,用结构体
举例:路径由方向(东南西北)和距离构成。
namespace demo
{
enum Direction//枚举类Direction(类名)
{
East,//具体值,用枚举。变量,用结构体
West,
South,
North
}
struct Path//结构体类Path(类名)。方向(属性1)与距离(属性2)组合,确定路径
{
public float distance;//浮点型变量
public Direction dir;//枚举类变量
}
class Program
{
public static void Main(string[] args)
{
Path path1;//定义枚举类变量state
path1.dir=Direction.East;
path1.distance=;
}
}
}
枚举类 enum,结构体类 struct的更多相关文章
- Swift: 类与结构体
对比类与结构体 类与结构体有许多的相同点,它们都可以: 定义属性来存储值: 定义方法来提供功能: 定义下标操作: 定义初始化函数: 扩展它的默认的实现: 遵从协议: 类有一些额外的能力,但是结构体没有 ...
- C#基础知识系列三(类和结构体、String和StringBuilder、equals和==)
前言 这一节主要来了解一下类和结构体之间的异同点.以及针对String和StringBuilder的用法.equals和==,其实可以看出很多地方都用到了上一节的值类型和引用类型.堆栈和装箱拆箱操作吧 ...
- [翻译] 编写高性能 .NET 代码--第五章 通用编码与对象设计 -- 类 vs 结构体
本章介绍了本书其它部分未涉及到的一些编码和设计原则.包含了一些.NET的应用场景,有些不会造成太大危害,有些则会造成明显的问题.剩下的则根据你的使用方法会产生不同的效果.如果要对本章节出现的原则做一个 ...
- C#静态类、静态构造函数,类与结构体的比较
一.静态类 静态类是不能实例化的,我们直接使用它的属性与方法,静态类最大的特点就是共享. 探究 public static class StaticTestClass{ public stati ...
- swift学习笔记3——类、结构体、枚举
之前学习swift时的个人笔记,根据github:the-swift-programming-language-in-chinese学习.总结,将重要的内容提取,加以理解后整理为学习笔记,方便以后查询 ...
- Swift的闭包,枚举,类和结构体
闭包(Closures) 使用过其它语言的应该对代码块并不陌生,Swift中的闭包与C,OC中的Block相似. 表示自包括的函数代码块.能够在代码中传递和使用. 而且能够捕获和存储上下文的变量以及常 ...
- Swift3.0P1 语法指南——类和结构体
原档:https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programmi ...
- swift学习笔记之-类和结构体
//类和结构体 import UIKit //类和结构体 /* 1.枚举enum.结构体struct和String.Array.Dictionary类型,都属于值传递类型,被赋值给新的常量或变量时传递 ...
- swift 类 与 结构体
这两天突然有人问我 swift里面 类和 结构体 有什么区别? 说实在的本人目前不太看好swift,相信很多人也是,oc 都 很成熟了. 本人目前不打算深入了解swift的原因swift 语言 ...
随机推荐
- 二、core abp 数据库迁移
一.数据库迁移-ABP(库) 1.配置链接数据库: 贴以下代码: { "ConnectionStrings": { "Default": "Serv ...
- 使用layui 做后台管理界面,在Tab中的链接点击后添加一个新TAB的解决方法
给链接或按钮 添加 onclick="self.parent.addTab('百度','http://www.baidu.com','icon-add')" 如: <a h ...
- Apache ab 单测 分布式
使用synchronized 处理并发 缺点:无法做到细粒度控制 只适合单点的情况 使用Redis作为分布式锁 setnx命令 设计模式 :使用 !setnx 加锁 getset命令
- MySQL列类型选择
比如年龄这个字段可以使用 1990-03-15 也可以用 19900315表示在列类型上可以选择 char 和 int:如果一个字段可以选择多种类型,尽量选择一个更快的类型:字段类型优先级 ...
- react事件绑定,事件传参,input单向数据绑定
import React, { Component } from 'react'; class New extends Component { constructor(props){ super(pr ...
- c++ string去除首尾 空格、\n、\r、\t
string s = " test "; size_t n = s.find_last_not_of(" \r\n\t"); if (n != string:: ...
- c++ 实现哈夫曼树中遇见的问题
为了提高效率求得 叶子 节点中权值最小的两个元素,我们需要使用堆数据结构,它可以以O(logn)的复杂度 取得n个元素中的最小元素.为了绕过堆的实现,我们可以使用标准模板库中相应的标准模板—优先队列. ...
- WebAPI和WebService的区别
WebAPI和WebService的区别 WebAPI用的是http协议,WebService用的是soap协议 WebAPI无状态,相对WebService更轻量级.WebAPI支持如get,pos ...
- .net core 2.0 Autofac
参考自 https://github.com/VictorTzeng/Zxw.Framework.NetCore 安装Autofac,在`project.csproj`加入 <PackageRe ...
- ubuntu 14.04zabbix的安装
开始安装 64位 Ubuntu 14.04.5 LTS \n \l 安装zabbix的源,以下操作在root下进行 # wget http://repo.zabbix.com/zabbix/3.0/ ...