1. C#에서 var타입 변수 (var type in C#)


- 암시적 변환 가능 타입

- 클래스 내의 필드 데이터로 사용할 수 없음 (메서드 내의 지역변수로 사용)

- return, parameter 로 사용할 수 없음

- null로 초기화 할 수 없음

- 초기값과 다른 type의 값을 저장할 수 없음

- 선언과 동시에 초기화


ex)

1
2
3
4
5
6
7
8
9
10
public class Example {
public void test() {
   var num = 10;
   //num = "abc"; //error : int형만 저장할 수 있음
}
 
//public var second(var n) { //error : return, parameter로 사용 불가
//}
}
 
cs


1번 참고) http://durubiz.tistory.com/entry/C-암시적-타입변환-변수-var-타입https://stackoverflow.com/questions/4307467/what-does-var-mean-in-c



2. Action

Action을 처음 보는 나는 그저 혼돈의 카오스.... 정의하는 방법도 넘나 생소한것 8ㅅ8


- Action은 return과 parameter가 없는 함수 포인터(=Delegate, 위임자)

  (참고 : Delegate는 일종의 함수 포인터, 내부적으로 Count 만큼 List를 순회하는 연결리스트 구조 생성)

- 결과 반환이 목적이 아니라 일련의 작업 수행이 목적


ex) 지금 분석중인 코드에서 가져옴

1
2
3
4
5
6
7
Action applyHue = () => {
    var i0 = Mathf.Clamp( ( int )Hue, 05 );
    var i1 = ( i0 + 1 ) % 6;
    var resultColor = Color.Lerp( hueColors[i0], hueColors[i1], Hue - i0 );
    satvalColors[3= resultColor;
    resetSatValTexture();
};
cs

- 형식

//메소드 내에서 선언

Action [Action명] = () => {

//action code

}; 


2번 참고) https://bong9.blog/2014/09/02/c-action-%EA%B3%BC-delegate-%EB%9E%8C%EB%8B%A4%EC%8B%9D-action-func-event/



3. Mathf struct의 Funtion


- Mathf.Min / Mathf.Max : 2개 이상의 parameter 중에서 최솟값/최댓값 return

- Mathf.Repeat(t, length) :  length 범위를 t만큼 반복, 0 ~ legnth 사이의 값 return

나머지 연산이 float으로 동작하고 t의 값만큼 length 내에서 순환하기 때문에 t 가 length보다 큰 경우, 순환함 

- Math.Clamp(value, min, max) : min ~ max 사이의 값이 value 범위 내에 있도록 함

value<min<max ☞ min 반환

min<value<max ☞ value 반환

min<max<value ☞ max 반환

ex)

1
2
3
4
5
6
7
8
9
10
11
Mathf.Min( color.r, color.g, color.b); // color의 r, g, b 값 중에 가장 작은 값 반환
 
Mathf.Repeat( (color.g - color.b) / d, 6); // 6을 (g-b)/d의 값 만큼 반복
Mathf.Repeat(94); // 1 return
Mathf.Repeat(52.5); // 0 return
Mathf.Repeat(3.02.5); // 0.5 return
 
Mathf.Clamp((int)Hue, 05); // 0 ~ 5사이의 값을 Hue 범위 안에 지정
Mathf.Clamp(937); // 7 return
Mathf.Clamp(537); // 5 return
Mathf.Clamp(237); // 2 return
cs


3번 참고) https://docs.unity3d.com/kr/current/ScriptReference/Mathf.htmlhttp://bureau.tistory.com/47




천천히, 꾸준히 syaring's blog

오류 정정, 피드백 언제나 환영합니다!

+ Recent posts