목록Programming (24)
지우너
Visual C# GUI 프로그래밍 1강 내용 중 일부를 간단하게 정리했습니다. 우리가 C# 프로그램을 만들게 되면 .NET 프레임워크 상에서 동작하도록 되어 있다. C# 언어로 작성된 코드는 컴파일되어 중간 언어(IL, Intermediate Language)로 변환되고, 이 IL 코드가 포함된 .exe 또는 .dll 파일이 생성된다.이렇게 생성된 파일을 실행하면 .NET 프레임워크의 CLR(Common Language Runtime)이 활성화된다. CLR은 IL 코드를 실행하기 위해 필요한 환경을 제공. 이 과정에서 JIT(Just-In-Time) 컴파일러가 통해 IL 코드를 기계어로 변환한다.최종적으로 변환된 기계어가 운영체제에서 실행되는 것.
요약멤버 초기화 리스트를 사용하는 방식이 더 효율적이고 권장된다.const 멤버 변수나 참조 멤버 변수를 초기화할 때는 반드시 이 방식을 사용해야 한다. 구조체/클래스 이름( 매개변수) : 변수1(매개변수), 변수2(nullptr), 변수3(nullptr) {} 위와 같은 방식으로 작성된다. 방법1. 대입struct Node { int data; Node *prev, *next; Node(int data){ this->data = data; prev = nullptr; next = nullptr; }}; 방법2. 멤버 초기화 리스트struct Node { int data; Node *prev, *next; Node(int data) :..
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성을 보고 정리한 글입니다.전체 내용을 정리하지 않았으며, 필요한 내용이 있다면 해당 강의를 참고하시기를 추천드립니다. Java에서 Thread를 만드는 방법은 "①Thread 클래스 상속받기 ②Runnable 인터페이스 구현하기"가 있다.실무에서는 주로 ②의 방법을 선택한다. 자바는 단일 상속만 허용하기 때문에 Thread를 상속 받으면 다른 클래스를 상속 받을 수 없다. Java에서 제공하는 기본 객체 Thread는 생성자에서 매개변수로 Runnable을 받는다. 스레드(Thread)와 해당 스레드가 실행할 작업(Runnable)이 분리되어 있다. package thread.start;public class MyRunnable implements R..
개념set은 treeset 자료구조로 되어 있다. treeset은 균형잡힌 이진트리 구조로 데이터를 관리해준다.삽입, 삭제, 탐색 등 모든 함수의 시간복잡도가 전부$O(logN)$중복이 허용되지 않음 균형잡힌 이진 트리 (Balanced Binary Tree): 균형잡힌 이진 트리는 각 노드의 왼쪽 서브트리와 오른쪽 서브트리 높이 차이가 최대 1인 이진 트리균형잡힌 트리는 항상 높이 균형을 유지하기 때문에 트리의 깊이가 상대적으로 작다 → 탐색, 삽입, 삭제 등의 연산이 빠르게 수행됨ex) AVL 트리, 레드-블랙 트리 등 언제 쓰는가지금까지 살펴본 숫자들 중 특정 숫자 k보다 같거나 큰 숫자를 빠르게 구하는 경우지금까지 살펴본 숫자들 중 최댓값을 계속 구하는 경우지금까지 살펴본 숫자들 중 최댓값을 계속..
사용법+는 해당 키들을 동시에 눌러야 함"" tab은 따옴표 안에 있는 문자를 입력 후 tab을 누르는 것(Enter를 대신 눌러도 된다) [최근 파일 보기] Command+E [한 줄 이동] Command+Shift+↑(↓)현재 줄에 있는 코드를 옮김 [함수 단위 이동] Ctrl + Shift + ↑(↓)커서를 다음 함수가 있는 곳으로 이동시킴 [main함수] "psvm" tab || "main" tab[상수] "psfi" tabpublic static final int [출력] "sout" tabsout을 입력 후 tab을 누르면 system.out.println 이 자동으로 완성된다. [출력] "soutv" tab || "변수명.soutv" tabPrints a value to System.outs..
Chap1. 벡터 대수(2) 내적아래 글은 Chap1 벡터대수의 1.3 내적의 내용을 담고 있습니다. [목표] 1. 벡터의 기하학적 표현 방법과 수치적 표현 방법을 배운다. 2. 벡터에 대해 정의되는 연산들과 그 연산들의 기하학적 응용방법을 배운다. 3. DirectXMath 라이브러리의 벡터 관련 함수들과 클래스들에 익숙해진다. 내적(inner product)점곱(dot product), 스칼라 곱(scalar product)이라고도 부름(벡터연산할 때 스칼라 곱셈이라고 하던 거랑 다른 개념임에 주의할 것!)결과가 스칼라값(방향이 없고, 크기만 있는 값) $u=(u_x, u_y, u_z),\, v=(v_x, v_y, v_z)$일 때 내적은 벡터의 각 성분들의 곱들의 합(x끼리, y끼리, z끼리 곱한 ..