2021년 10월 17일 일요일

사용자 정의타입(열거형, 구조체)

 1-7. 사용자 정의타입(열거형, 구조체)


열거형(enum type)


정의 : enum Color { Red , Green , Blue }    // Color c = Color.Red;

첫 번째 요소가 0이라는 기본값을 가진다. 즉 열거형의 내부요소의 형식은 int형 이다.


사용법 : Color colorPalette = Color.Red; 

Console.WriteLine(“{0}” , colorPalette); //display Red 

Console.WriteLine(“{0}” , (Color)0);    //display Red


using System;

 

namespace day1

{

    enum Day1

    {

        Monday, Thesday, Wednesday, Thursday, Friday, Saturday, Sunday

    }

    enum Day2 : byte

    {

        Monday = 11, Thesday, Wednesday, Thursday, Friday, Saturday, Sunday = Monday + 100

    }

    public class EnumTest

    {

        static void Main()

        {

            Day1 whatDay = Day1.Sunday;

            Console.WriteLine("{0}", whatDay);      //Sunday 

            Console.WriteLine("{0}", (int)whatDay);  //6

 

            whatDay = (Day1)6;

            Console.WriteLine("{0}", whatDay);      //Sunday

 

            Day2 whatDay2 = Day2.Monday;

            Console.WriteLine("{0}", whatDay2);       //Monday

            Console.WriteLine("{0}", (byte)whatDay2);  //11

 

            whatDay2 = (Day2)111;

            Console.WriteLine("{0}", whatDay2);  //Sunday

        }

    }

}


구조체(Struct)


여러 가지 형식의 자료들을 모아둔 틀이며 C#에서는 메소드가 없는 클래스다. 


구조체의 정의 방법


public struct Employee

{

string firstname;

int age;

}


사용 방법


Employee companyEmployee; 

companyEmployee.firstname = “Joe“ ; 

companyEmployee.age = 23; 


using System;

 

struct Emp

{

public int id;   public string name;

}

 

class EmpTest

{

public static void Main() 

{

Emp e;    e.id = 1;    e.name = "1길동";   

Console.WriteLine("사번: {0}",e.id);

Console.WriteLine("이름: {0}",e.name);

 

Emp e1 = new Emp();  //new하더라도 스택에 저장된다.

e1.id = 2;  e1.name = “2길동”;

Console.WriteLine("사번: {0}",e1.id);

Console.WriteLine("이름: {0}",e1.name);

 

}

}


댓글 없음:

댓글 쓰기

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...