순서
I. 기초
II. 가변길이 매개변수
III. 명명된 인수 / 선택적 인수
I. 기초
C#은 C++과 비슷해 보이지만 구조는 Java랑 비슷한 느낌이다.
공부가 좀 필요할듯... 아주 기초 사용법...
using System // Consol 사용
주로 비슷한 기능을 하는 Class를 감싸서
namespace를 정의해준다. 외부에서 using ~~으로 정의
namespace HelloSpace {
class CMain {
public static void Main() {
CHello myHello = new CHello(); // 객체 생성
Console.WriteLine($"{myHello.print("Hello~")}");
}
}
class CHello {
public void print() {
Console.WiteLine("{0}", Str);
}
}
}
Main 함수가 클래스 안에 존재하고,
System에서 Class내부의 Main을 호출해야하므로 static으로 정의함.
printf -> System.Console.WriteLine 사용
1. ($"{Variable}")
2. ("{0} {1}", var1, var2) 처럼 사용함
II. 가변길이 매개변수
C#에서는 함수 인자에 "params"를 붙여 매개변수를 가변길이의 list로 받을 수 있다.
using System;
namespace ParamApp1 {
class CParam {
private static void Sum(params int[] num) {
int sum = 0;
Console.Write("Length : {0} ", num.Length);
foreach (int i in num) sum += i;
Console.WriteLine("Sum : {0}", sum);
}
public static void Main() {
int[] myArray = new int [3] {11,22,33};
Sum(1);
Sum(1,2);
Sum(myArray);
}
}
}
출력
Length : 1 Sum : 1
Length : 2 Sum : 3
Length : 3 Sum : 66
III. 명명된 인수 / 선택적 인수
인수명을 알고있다면 Caller에서 직접 지정할 수 있고,
C++처럼 Default 인수를 설정할 수 있다.
class CProg {
private int Sum(int i, int j = 0) => Console.Writeline($"{i}, {j}");
public static void Main() {
CProg program = new CProg();
program.Sum(i:1, j:10); // 명명된인수
program.Sum(2) // 선택적 인수 ( j = 0 자동으로설정)
'Programming > .NET(C#,WPF)' 카테고리의 다른 글
[Programming][C#] 문법 5. Struct (0) | 2023.01.09 |
---|---|
[Programming][C#] 문법 4. Polymorphism with Inheritance & Override (0) | 2023.01.08 |
[Programming][C#] 문법 3. Property (0) | 2023.01.08 |
[Programming][C#] 문법 2. Generic (0) | 2023.01.08 |