반응형
[C#] 종료자 / 소멸자
PROGRAMMING/03. C#2024. 4. 30. 13:31[C#] 종료자 / 소멸자

C#에서의 종료자종료자 (Finalizer) / 소멸자 (Destructor) 는 해당 클래스의 인스턴스가 소멸될 때 불리는 메소드이다. 종료자의 특징종료자는 구조체에서 정의할 수 없으며, 클래스에서만 사용한다.클래스에는 종료자가 하나만 있을 수 있다.종료자는 상속하거나 오버로딩(파라미터x) 할 수 없다.종료자를 호출할 수 없다. 자동으로 호출된다.CLR의 가비지 컬렉터가 객체가 소멸되는 시점을 판단해서 종료자를 호출한다.종료자는 한정자(접근지정자x)를 사용하거나 매개 변수를 갖지 않는다.종료자 예제

[C#] Random.InitState() - 동일한 랜덤 값 얻기
PROGRAMMING/03. C#2024. 4. 30. 13:15[C#] Random.InitState() - 동일한 랜덤 값 얻기

유니티[C#]를 이용하여 Random.InitState()로 동일한 랜덤 값 얻기일단 랜덤 한 값을 얻고 싶다면, Random.Range()로 만들 수 있을 것이다.그렇다면 결과는 당연히 매번 다른 랜덤값이 출력될 것이다. 하지만 이 결과를 Random.InitState()를 이용하여 매번 동일하게 만들 수 있다.이 부분을 추가하고 다시 실행해 보면  이 결과 값을 기억하고 다시 실행해 봐도 이렇게 동일한 값이 나오는 것을 볼 수 있다.시드가 동일하면 동일한 값으로 동일한 알고리즘을 연산하기 때문에 값이 항상 똑같다. 게임개발로 치면, 클라이언트 하고 서버와의 랜덤 동기화를 위해서 사용하는 것이 바로 시드이다.  출처 및 참고: 강의 짱 잘하시는 울 유니티 선생님 수업

[C++] 입력과 출력 (cout, cin / printf, scanf)
PROGRAMMING/04. C++2024. 4. 27. 14:52[C++] 입력과 출력 (cout, cin / printf, scanf)

cout프로그램에 무언가를 출력하기 위한 함수이다.C++의 스트림 유형의 객체 출력하려는 값의 자료형을 컴파일러가 검사할 수 있다.출력하려는 값의 형에 따라 적절한 함수를 호출한다.모양cout                  "C++";객체  삽입연산자  문자열 방향이 정보의 흐름을 상징cout : 문자열(string), 수(number), 문자(character) 들을 포함한 여러 가지 다양한 정보들을 출력하는 방법을 알고있는, 미리 정의 된 객체 cout headercout을 사용하려면 iostream을 include 해야 한다.1#include iostream>cscout 예제12345678#include iostream> int main(){    std::cout  "Hello C++"  std:..

[C#] 리플렉션 (Reflection)
PROGRAMMING/03. C#2024. 4. 26. 11:54[C#] 리플렉션 (Reflection)

리플렉션 (Reflection)➡️ 어떤 Type에 대한 정보를 가져오거나 접근하는 등의 작업을 런타임에 동적으로 수행할 수 있도록 해주는 기능이다.리플렉션을 사용하면 런타임에서 메서드를 호출하거나 필드의 값을 바꾸는 등의 작업을 할 수 있다. 다음은 리플렉션을 이용해서 할 수 있는 것들이다.어셈블리 내의 형식에 대한 메타데이터에 접근할 수 있으며, 여기는 전체 형식 이름, 멤버 이름, 특성 등이 포함된다.컴파일 타임에 정의되는 바인딩 대신 메타데이터를 사용해서 런타임에 동적으로 형식의 멤버를 호출할 수 있다.리플렉션은 어셈블리에 포함된 메타데이터를 검사하는 프로세스다.리플렉션을 통해 어셈블리 내의 모든 형식을 열거하고 특정 조건에 부합하는 정보를 찾는 것이 가능하다.형식에 접근할 때는 System.Ty..

[C++] Template (템플릿)
PROGRAMMING/04. C++2024. 4. 26. 11:19[C++] Template (템플릿)

템플릿(Template)함수나 클래스를 개별적으로 다시 작성하지 않아도, 여러 자료 형으로 사용할 수 있도록 하게 만들어 놓은 틀이다.템플릿을 사용하면 타입마다 별도의 함수나 클래스를 만들지 않고, 여러 타입에서 동작할 수 있는 단 하나의 함수나 클래스를 작성하는 것이 가능하다.C#의 제네릭과 비슷하다고 생각하면 된다. 함수 템플릿(Function Template)클래스 템플릿(Class Template)이렇게 두 개로 나뉜다.함수 템플릿(Function Template)함수의 일반화된 선언을 의미한다. 함수 템플릿을 사용하면 같은 알고리즘을 기반으로 하면서, 서로 다른 타입에서 동작하는 함수를 한 번에 정의할 수 있다.임의의 타입으로 작성된 함수에 특정 타입을 매개변수로 전달하면, C++ 컴파일러는 해..

[C++] Inline
PROGRAMMING/04. C++2024. 4. 26. 10:45[C++] Inline

Inline 함수C++에서 함수의 호출은 꽤 복잡한 과정을 거치므로, 약간의 시간이 걸리게 된다.이때 함수를 실행하는 시간이 오래 걸린다면, 함수를 호출하는데 걸리는 시간은 전혀 문제가 되지 않는다.하지만 함수의 실행 시간이 매우 짧다면, 함수 호출에 걸리는 시간도 부담이 될 수 있다.C++에서는 이러한 경우에 사용할 수 있는 인라인 함수(inline function)라는 것을 제공한다.인라인 함수는 호출될 때 일반적인 함수의 호출 과정을 거치지 않고, 함수의 모든 코드를 호출된 자리에 바로 삽입하는 방식의 함수이다.이 방식은 함수를 호출하는 데 걸리는 시간은 절약되나, 함수 호출 과정으로 생기는 여러 이점을 포기하게 된다. 따라서 코드가 매우 적은 함수만을 인라인 함수로 선언하는 것이 좋다.  ⚠️인라..

반응형
image