ACABERRY와 함께하는 프로그래밍 공부 => 연산자 , 식 본문 정의 => 연산자 연산자는 C#에서 두 가지 방법으로 사용할 수 있습니다. 람다 식에서 람다 연산자로, 람다 본문에서 입력 변수를 구분합니다. 식 본문 정의에서는 멤버 구현에서 멤버 이름을 구분합니다. 이 중에서도 두번째 식 본문의 정의에 대해서 알아보겠습니다 식 본문 정의 식 본문 정의는 간결하고 읽을 수 있는 형식으로 멤버 구현을 제공합니다. 다음과 같은 일반적인 구문을 포함합니다. member => expression; 여기서 expression은 유효한 식입니다. 식은 멤버의 반환 형식이 void이거나 멤버가 생성자 또는 종료자인 경우에만 statement 식일 수 있습니다. 메서드 및 속성 가져오기 문에 대한 식 본문 정의는 C..
ACABERRY와 함께하는 프로그래밍 공부 C# Foreach에서 발생하는 가비지? ( foreach의 성능(속도)과는 관계없이 GC관련. ) foreach 를 사용하면 enumerator 를 위해 32B 메모리를 할당합니다. 커보이지는 않지만, Update 와 FixedUpdate 안에 몇개 넣어두고 돌려본다면 실감 날겁니다.delegate 에 콜백을 추가하거나 삭제하는 것은 104B 메모리를 할당합니다. 우회하는 방법은 모르겠습니다. https://cafe.naver.com/unity1thdeveloper/7 [★★★★★] 2D 게임 최적화 필수팁!|♥ 아카베리 유니팁 이 부분에서 foreach는 enumerator에서 32B의 메모리를 사용한다고 하였는데, 내부적인 동작은 아래와 같아요. using..
ACABERRY와 함께하는 프로그래밍 공부 가비지 컬렉터 이부분을 물어본다면 보통 '이 슈레기수집자가 언제 호출되며 어떻게 동작되는지 설명해보시오' 라고 묻게됩니다. 가비지컬렉터 동작관련은 면접 단골이니, 자신만의 답변을 만들어 보세요〃 :: GC 동작 발생 시기GC는 특정 조건(힙의 사용 가능한 영역이 특정 수준 이하로 줄어든다든가 등등)을 만족하는 상황이 되면 현재 수행중인 쓰레드(thread)들을 모두 중단시키고 GC 쓰레드를 활성화(평소에는 아무런 작업 없이 잠들어 있는 쓰레드이다)한다. 그림으로 설명된 꿀잼원리. http://grayt.tistory.com/115 가비지 컬렉터 Welcome to GC world. http://www.simpleisbest.net/post/2011/04/01/R..
class Man { internal virtual void Work() //virtual 키워드로 가상 메서드 선언 { Console.WriteLine("일을 하다."); } } class Student : Man { internal override void Work() //override로 기반 형식의 가상 메서드 재정의 { Console.WriteLine("공부하다."); } } class Program { static void Main() { Man man = new Student(); man.Work(); } } 출처: http://ehclub.tistory.com/2351 [언제나 휴일]class Man { internal virtual void Work() //virtual 키워드로 가상 메..
나눗셈보다 곱셈에 대한 기본자료 /=3
using System; class Program { static void Main() { // Use long suffix. long l1 = 10000L; // Use double suffix. double d1 = 123.764D; // Use float suffix. float f1 = 100.50F; // Use unsigned suffix. uint u1 = 1000U; // Use decimal suffix. decimal m2 = 4000.1234M; // Use unsigned suffix and long suffix. ulong u2 = 10002000300040005000UL; } }
코루틴(Coroutine)이 뭔가요? C 언어등에서 일반적으로 사용하는 함수는 시작할 때 진입하는 지점이 하나 존재하고 함수가 모두 실행되거나, return 구문에 의해서 종료되는 지점을 설정할 수 있습니다. 이러한 함수를 서브루틴(Subroutine)이라 부르는데, 코루틴은 이를 더 일반화한 개념으로 진입하는 지점까지 여러 개를 가질 수 있는 함수를 의미합니다. 개념적으로만 본다면 서브루틴도 코루틴의 한 종류라고 볼 수 있겠지요. Coroutine 선언IEnumerator 함수이름(){}void Start(){ StartCoroutine("함수이름"); //StartCoroutine(함수이름());} 코루틴용 데이터유니티 엔진이 수행하는 기능yield return null다음 프레임까지 대기yield ..
출처를 잊어먹었어요.. csv 2 jsonCSV 를 json으로 변경이외에도 sql,xml등으로 변경 가능 http://www.convertcsv.com/csv-to-json.htm jsonParser간단하게 json확인http://json.parser.online.fr/ logcat로그켓 확인(생상구분되는건 좋은데,크게 좋지는 않음.) - 안드로이드 스튜디오로그로 보고있음! http://forgottenprojects.com/tools/android/logcat/