올바른 타이핑 방법을 연습한다. 간단한 개념을 이해한다.예제를 따라해본다.문제가 생기면 해결한다.예제를 내 맘대로 바꿔본다.: 컴퓨터가 직접 판독하고 실행살 수 있는 언어: 저급 언어로서 기계어에 가까우며, 하드웨어 구성 방식에 의존하게 된다. 명령이나 그 대상이 되
Expression은 '수식'이라는 뜻으로 하나 이상의 값으로 표현(reduce)될 수 있는 코드를 말하다. 일상생활에서의 수식은 숫자와 연산자만으로 이루어지는 것과 달리 컴퓨터 과학에서 수식은 함수 콜(), 변수 이름 등의 식별자, 배열등의 할당 연산자(\[])등 까
1 byets = 8 bitschar = 1 bytesShort = 2bytesint = 2 byteslong = 4 byteslong long = 8 bytes각각 의 형태마다 표현할수 있는 정보의 제한이 있고 예를 들어 short 안에 +-32767이라는 숫자를
위키피디아 연산자 우선수위https://ko.wikipedia.org/wiki/C%EC%99%80_C%2B%2B%EC%9D%98\_%EC%97%B0%EC%82%B0%EC%9E%90수식을 작성할 때 가독성을 위해 우선순위로 하고자하는 식에 ()붙이는 것을 권장한
블록(복합분), 명칭 공간, 이름 충돌, 이름 숨김{} 중괄호(블록)안에서 정의된 것은 벗어나면 사라진다. 바깥에 선언된 것은 안에 들어갈 수 있지만 안에서 선언된 것은 바깥으로 나갈 수 없다.바깥에서 선언 된 것과 중괄호 안에 선언된 것의 이름이 같을 경우 바깥에서
참 일 때 출력case마다 지정된 변수 출력조건에 맞을 경우 tryagain:으로 돌아가기조건에 맞으면 반복do를 마친후 while 반복조건에 맞게 반복반복을 마치고 끝냄반복을 정지하고 처음으로 돌아가서 다시 반복컴퓨터는 난수를 생성할 수 없다. 난수의 원리와 난수를
같은 타입의 변수들로 이루어진 유한 집합.선택정렬: 제자리 정렬 알고리즘정적 다차원 배열: 다차원 배열이라도 메모리공간은 1차원처럼 연속적동작할당배열: new-delete 함수포인터: 프로그래밍 언어에서 다른 변수 혹은, 그 변수의 메모리 공간주소를 가리키는 변수Nul
아래 코드를 통해 주소를 확인함으로써 변수명이 같아도 함수가 다르면 주소가 다름을 확인할 수 있다.참조를 매개변수로 사용한 함수는 다른 곳에 썻을 때 주소가 남는다.외부에 있는 변수의 값을 집정 변경할 수 있다.서로 다른 타입의 값을 가질 수 있는 고정된 값의 컨테이너
객체지향프로그래밍: 프로그래밍 패러다임의 하나로 프로그램을 객체들의 모임으로 보고 개발하는 것캡슐화: 객체의 데이터와 그 데이터를 처리하는 로직을 한 곳에 묶어서 캡슐처럼 사용하게 하는 것접근지정자: private, public, protected생성자: 해당 클래스의
오버로딩: 같은 이름의 메서드 여러개를 가지면서 매개변수의 유형과 개수가 다르도록 하는 기술오버라이딩: 상위클래스를 가지고 있느 메서드를 하위 클래스가 재정의해서 사용연산자오버로딩을 하는 이유: 연산자마다 다르지만 공통적으로 자신이 정의할 클래스르 기본 타입처럼 다루기
구성을 다른 클래스에 속하게 할 수 있지만, 다른 클래스에 사용된 구성(부품)은 다른 구성이라는 것을 인지하여야 한다.구성을 서브헤더파일로 저장하는 것을 습관하 하는 것을 권장한다.1) 첫번 째 방법구성 관계에서 클래스의 멤버들의 주소를 불러오는 형식으로 바꾼다는 느
자 클래스만 호출해도 디폴트로 모 클래스가 호출되고 나오고 자클래스가 호출 된다.자클래스의 크기는 모클래스 + 자클래스를 다 담을 크기이다.Destructor ~를 사용한다면 제일 자클래스부터 소멸된다.public은 어디서든 쓸 수 있고protected는 자 클래스
1. 다형성의 기본 개념 객체 지향 프로그래밍에서 중요한 개념 중 하나로, '많은 형태를 가짐'을 의미하는 그리스어에서 유래 프로그래밍 언어가 코드의 구조를 단일한 인터페이스 뒤에 다양한 타입의 객체로 처리할 수 있게 함으로써 코드의 유연성을 증가시키는 것 dog: a
용어정리Templates: 함수나 클래스를 개별적으로 다시 작성하지 않아도, 여러 자료 형을 사용할 수 있도록 하게 만들어 놓은 틀intantiation: 어떤 클래스의 새로운 인스턴스를 생성하는 것을 인스턴스 화라고 한다.explicit instantiation: 명
try, catch, throw예외가 발생하면, C++ 런타임은 catch 블록을 찾기 위해 스택을 되감습니다. 이 과정에서 생성된 객체의 소멸자가 호출되어 자원이 정리됩니다.아래 코드를 통해 작동 순서를 확인할 수 있다.사용자 정의 예외 클래스를 만들어 특정한 유형의
객체를 복사할 때는 새로운 자원이 할당되고, 원본 객체와 복사된 객체는 완전히 구분돼야 한다.이동 의미론이 추가되기 전에는 swapping이 자원 할당이나 복사 없이 데이터를 전달 하는 일반적인 방법이었다. 객체는 단순하게 내용을 서로 교환한다.객체를 이동할 때는 생성
내용이 방대하기 때문에 전부 다루긴 어렵다. 필요할 때 래퍼런스를 찾아보며 사용하면 된다.cppreference.com <- 이 주소에 STL의 정리가 아주 잘 되어있다.자료구조입니다. 간단히 넘어가겠습니다.컨테이너의 요소를 순회하고 접근하기 위한 객체\*: 반복
string 은 charwstring은 wcharwchar은 widw-chractor와 unicode에서 주로 사용생성형변환원소접근try-catch를 사용하여 원소를 넣을 경우 my_str.at(100) = "x"처럼 사용하여야한다.너무 느릴꺼라고 생각되면 예외처리는
setw(): 입력받는 글자 수 제한,아래에 있는 코드를 Run 해보면 setw를 거친 buf의 문자들이 저장되는지 확인해 볼 수 있다.cin은 빈칸을 무시한다. 만약 빈칸을 받고 싶다면 cin.get()을 사용cin.getline(): 줄바꿈 캐릭터까지 받아옴cin.
람다함수: 이름 없이 선언되고 사용할 수 있는 함수 리터럴함수 래퍼함수 바인딩placeholder파라미터의 개수를 딱 잡아준다.아래 처럼 작성하면 여러값을 반환할 수 있다.멀티쓰레딩프로세스: 실행 중인 프로그램의 인스턴스쓰레드: 프로세스 내에서 실행되는 흐름의 단위멀티
해설https://jiwanm.github.io/cpp/chapter19-6/1 inner_product 빠름2 순진한 멀티쓰레딩. 바르지만 레이스 컨디션으로 값이 부정확3 lock gaurd 느림4 atomic 느림, 아토믹은 원래 트림5 task_based