반응형
[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)라는 것을 제공한다.인라인 함수는 호출될 때 일반적인 함수의 호출 과정을 거치지 않고, 함수의 모든 코드를 호출된 자리에 바로 삽입하는 방식의 함수이다.이 방식은 함수를 호출하는 데 걸리는 시간은 절약되나, 함수 호출 과정으로 생기는 여러 이점을 포기하게 된다. 따라서 코드가 매우 적은 함수만을 인라인 함수로 선언하는 것이 좋다.  ⚠️인라..

함수 호출 규약 (Calling Convention)
PROGRAMMING/04. C++2024. 4. 26. 10:29함수 호출 규약 (Calling Convention)

함수 호출 규약Calling Convention, 해석하면 '함수 호출 규약' 이란 어떤 함수를 호출 할 때, 그 함수의 파라미터(인자)를 어떤 방식으로 전달하는가에 대한 하나의 약속이다.함수를 호출 할 때, 프로세스에 정의되어있는 스택 메모리 공간을 이용해서 파라미터를 함수로 전달하게 되고, 이 스택 메모리 공간은 프로세스가 실행 될 때에 해당 PE헤더에 스택 메모리의 크기가 명시되어 있다. 스택에 저장되는 값들은 임시적인 값들이기 때문에 더이상 사용하지 않더라도 값을 지우거나 하지 않는다, 굳이 지우려고 하지 않더라도 스택에 다른 값을 입력할 때 저절로 덮어 쓰기 때문에 불필요한 CPU 자원 소모의 낭비를 막기 위해서 그대로 내버려 둔다.주요한 함수 호출 규약cdeclstdcallfastcallcde..

[컴퓨터 구조] 메모리 계층 구조
PROGRAMMING/01. 컴퓨터 구조2024. 4. 26. 10:10[컴퓨터 구조] 메모리 계층 구조

★KEYWORD★메모리 관련 3가지 주요 특성인 용량, 접근, 속도, 비용 간의 절충관계를 파악해 필요에 따라 채택할 수 있게 나타낸 구조 / 레지스터, 캐시 : CPU 내부에 존재하고 CPU 빠르게 접근 가능 / 메모리 : CPU 외부에 존재하고 CPU 느리게 접근 / 하드 디스크 : CPU 직접 접근 불가하고 데이터를 메모리로 이동시켜 접근 가능하지만 아주 느림 메모리 계층 구조(Memory Hierachy)메모리를 필요에 따라 여러 가지 종류로 나누어 둠을 의미한다. 이때 필요한 대부분의 경우 CPU가 메모리에 더 빨리 접근하기 위함이다. 메모리 계층 구조를 바탕으로 컴퓨터의 설계에 있어 상황에 맞게 여러 장치를 각각의 역할이나 특징을 기반으로 사용할 수 있도록 하여 최적의 효율을 낼 수 있도록 한..

반응형
image