다음 표는 SQL Server 데이터 유형에 해당하는 C#을 표시합니다. - SQL Server 데이터 유형 동등한 C# 데이터 유형 변수 바이너리 바이트[] 바이너리 바이트[] 이미지 없음 varchar 없음 문자 없음 nvarchar 문자열, 문자[] nchar 문자열, 문자[] 텍스트 없음 텍스트 없음 행 버전 바이트[] 비트 부울 작은 크기 바이트 작은 정수 Int16 int Int32 bigint Int64 소액 소수점 돈 소수점 숫자 소수점 소수점 소수점 진짜 싱글 플로트 더블 작
#define 전처리기 지시문은 기호라고 하는 일련의 문자를 정의합니다. 기호 상수를 생성합니다. #define을 사용하면 기호를 #if 지시문에 전달된 표현식으로 사용하여 표현식이 true로 평가되도록 기호를 정의할 수 있습니다. 다음은 예입니다 - 예 #define ONE #undef TWO using System; namespace Demo { class Program { static void Main(string[] args) { &
클래스를 생성할 때 완전히 새로운 데이터 멤버와 멤버 함수를 작성하는 대신 프로그래머는 새 클래스가 기존 클래스의 멤버를 상속하도록 지정할 수 있습니다. 이 기존 클래스를 기본 클래스라고 하고 새 클래스를 파생 클래스라고 합니다. 클래스는 둘 이상의 클래스 또는 인터페이스에서 파생될 수 있습니다. 즉, 여러 기본 클래스 또는 인터페이스에서 데이터와 기능을 상속할 수 있습니다. 다음은 C#의 기본 클래스 구문입니다. − <access-specifier> class <base_class> { &nb
Windows에서 C#을 위한 최고의 IDE는 Microsoft Visual Studio입니다. 웹사이트, 웹 앱, 모바일 앱 등을 개발하는 IDE입니다. 다음은 Visual Studio IDE의 기능입니다- 코드 편집기 - Visual Studio에는 IntelliSense를 사용하여 구문 강조 표시 및 코드 완성을 지원하는 코드 편집기가 있습니다. 중단점 - 중단점을 설정하고 실행이 진행됨에 따라 변수 값을 모니터링할 수 있습니다. 기능 확장 - Visual Studio를 사용하여 IDE의 기능을 확장할 수 있
사전은 C#의 키와 값의 모음입니다. 사전은 System.Collection.Generics 네임스페이스에 포함되어 있습니다. 사전을 선언하고 초기화하려면 - IDictionary<int, int> d = new Dictionary<int, int>(); 위와 같이 딕셔너리 객체를 선언하면서 키와 값의 종류를 설정합니다. int는 키 유형이고 string은 값 유형입니다. 둘 다 d라는 사전 개체에 저장됩니다. 이제 예를 살펴보겠습니다 - 예시 using System; using System.Collect
Generic List는 C#의 제네릭 컬렉션입니다. 크기는 배열과 달리 목록을 사용하여 동적으로 늘릴 수 있습니다. 예를 들어 보겠습니다 - 목록을 먼저 설정했습니다 - List<string> myList = new List<string>() 이제 목록에 요소를 추가하십시오 - List<string> myList = new List<string>() { "mammals", "reptiles", &nbs
C# 프로그램을 실행하기 위한 Visual Studio IDE의 대안 - SharpDevelop C# 프로그램을 실행하는 오픈 소스 IDE이지만 Microsoft Windows에서만 작동합니다. SharpDevelop은 Visual Studio의 대안으로 개발되었습니다. C#으로 작성되었습니다. Git, SVN, NuGet, 지원 LINQ패드 IDE 없이도 C# 프로그램을 실행할 수 있는 유틸리티입니다. LINQ Pa d의 일부 기능은 자동완성처럼 유료이며 사용자는 결제 후에만 액세스할 수 있습니다. 모노개발 Windows,
사전 컬렉션에서 모든 데이터 유형을 저장합니다. 사전은 C#의 키와 값의 모음입니다. Dictionary는 System.Collection.Generics 네임스페이스에 포함되어 있습니다. 이제 C#에서 사전을 반복하는 가장 좋은 방법을 살펴보겠습니다 − 먼저 사전을 만들어 보겠습니다 − var d = new Dictionary<string, int>(5); 이제 키와 값을 추가하십시오 - // add key and value d.Add("car", 25); d.Add("bus",
Windows에서 C# 프로그램을 실행하는 데 가장 적합한 IDE는 Visual Studio입니다. Linux에서 최고의 IDE는 Monodevelop으로 간주될 수 있습니다. Windows, Linux 및 MacOS와 같은 여러 플랫폼에서 C#을 실행할 수 있는 오픈 소스 IDE입니다. Monodevelop은 Xamarin Studio라고도 합니다. C# 프로그램을 실행하는 C# 컴파일러가 있습니다. Monodevelop에는 다음과 같은 기능이 있습니다. - 다중 플랫폼 IDE Linux, Windows 및 macOS를 지원합
C#의 스레드 풀은 스레드 모음입니다. 백그라운드에서 작업을 수행하는 데 사용됩니다. 스레드가 작업을 완료하면 대기 중인 모든 스레드가 있는 큐로 전송됩니다. 이는 재사용할 수 있도록 하기 위한 것입니다. 스레드 풀을 만드는 방법을 살펴보겠습니다. 먼저 다음 네임스페이스를 사용하십시오 - using System.Threading; 이제 스레드 풀 객체를 사용하여 스레드 풀 클래스를 호출하십시오. QueueUserWorkItem − 메서드를 호출합니다. ThreadPool.QueueUserWorkItem(new WaitCallb
증분 연산자 C#에서 값을 증가시키려면 증가 연산자, 즉 사전 증가 및 사후 증가 연산자를 사용할 수 있습니다. 다음은 예입니다 - 예 using System; class Demo { static void Main() { int a = 250; Console.WriteLine(a); a++; Console.WriteLine(a);  
둘 이상의 메서드에 대한 참조를 보유하는 대리자를 멀티캐스팅 대리자라고 합니다. 예를 들어 보겠습니다 - 예 using System; delegate void myDelegate(int val1, int val2); public class Demo { public static void CalAdd(int val1, int val2) { Console.WriteLine("{0} + {1} = {2}", val1, val2, val1 + val2); &nb
다른 구성 요소에 속성을 제공하기 위해 Extender 공급자가 사용됩니다. TooTtip 구성 요소의 예를 살펴보겠습니다. 구성 요소를 양식에 추가합니다. 이렇게 하면 모든 컨트롤에 ToolTip 속성이 설정됩니다. 동일한 속성이 공격을 받은 PropertyGrid 컨트롤 아래에 있지 않습니다. myTooltip1.SetToolTip(btn1, "This is ToolTip!"); Extender 공급자 구성 요소를 구현하는 방법을 살펴보겠습니다 - 먼저 구성 요소를 정의하십시오 - public class
문장 부호는 C#에서 그룹에 대한 특수 기호로 사용되거나 코드를 나눕니다. 여기에는 -가 포함됩니다. ] () {}, ; * = # 예를 들어 =는 클래스에 포함되거나 변수를 선언하는 동안에도 포함됩니다. 문장은 세미콜론으로 끝납니다 - int a = 10; 클래스에서 중괄호가 사용됩니다 - class Demo { } 사전을 선언하는 동안 - var d = new Dictionary<string, int>(5); 목록을 선언하고 초기화할 때도 사용됩니다 - List<string> myList = new
메서드에 대해 C#에서 봉인된 수정자를 사용하면 메서드가 재정의하는 기능이 손실됩니다. 봉인된 메서드는 파생 클래스의 일부여야 하며 메서드는 재정의된 메서드여야 합니다. 예를 들어 보겠습니다 - 다음 예제에서는 Display() 메서드를 재정의할 수 없습니다. ClassTwo 파생 클래스에 대해 봉인된 수정자가 있기 때문입니다. ClassOne은 우리의 기본 클래스인 반면 ClassTwo와 ClassThree는 파생 클래스입니다 - 예 class ClassOne { public virtual void
정적 배열은 크기가 고정된 데이터 구조입니다. C#에서 정적 배열의 예를 살펴보겠습니다. 다음은 정적 문자열 배열입니다. 데이터는 여기에서 동일하게 유지됩니다. 즉, 고정 − static string[] _fruits = new string[] { "apple", "mango" }; 이제 C#에서 정적 배열을 만들고 액세스하는 전체 예제를 살펴보겠습니다 − 예시 using System; class Demo { static
명시적 변환에는 캐스트 연산자가 필요합니다. 이러한 변환은 사전 정의된 기능을 사용하여 사용자가 명시적으로 수행합니다. double을 int −로 변환하는 예를 살펴보겠습니다. 예 using System; namespace Demo { class Program { static void Main(string[] args) { double d = 345.78;
String은 System.String을 나타내는 반면 string은 System.String에 대한 C#의 별칭입니다 - 예를 들어 - string str = "Welcome!"; 필수는 아니지만 일반적으로 클래스로 작업할 때 String이 사용됩니다 - string str = String.Format("Welcome! {0}!", user); string은 System.String의 별칭이기 때문에. 다른 데이터 유형의 별칭은 -입니다. 예 object: System.Object stri
배열은 데이터 모음을 저장하는 데 사용됩니다. 인접한 메모리 위치로 구성됩니다. 배열의 몇 가지 예는 다음과 같습니다. - 세 개의 정렬된 배열에서 공통 요소 찾기 using System; class Demo { static void commonElements(int []one, int []two, int []three) { int i = 0, j = 0, k = 0; while (i < one.Length &&am
C#은 다중 상속 사용을 지원하지 않지만 인터페이스를 사용하여 구현할 수 있습니다. 다음은 Interface를 통한 상속의 구현입니다. 두 개의 인터페이스 생성 - public interface BaseOne { void display(); } public interface BaseTwo { void display(); } 이제 파생 클래스를 설정하는 것처럼 인터페이스를 설정합니다. public class ChildOne : BaseOne, BaseTwo {