이번 시리즈에서는 C++에 대해서 공부를 해보자.이번 포스팅에서는 간단하게 C++의 공부/입문 로드맵에 대해서만 다뤄볼 예정이다.C++ 공부의 로드맵은 이와 같다.이 로드맵을 따라, 이 로드맵에 담겨있는 자료들을 기반으로, 그리고 필요하다면 각종 서적 및 웹 검색 자료
이번 포스팅부터 본격적으로 C++에 대해서 공부해보도록 하자. 이번 포스팅에서는 C++에 대한 간단한 소개를 공부해볼 예정이다.C++은 C언어의 연장선상에서 태어난 언어라고 해도 된다. 1985년 개발되었으며, 객체 지향적 특성을 지원하고 있다. 게임 개발, 시스템 프
이번 포스팅에서는 C++ 프로그램 구성의 기초 단계를 간단하게 알아볼 것이다. 다시 말해, 간단한 C++ 프로그램의 구조를 공부할 것이다.다음 코드를 살펴보자.이 프로그램의 구조를 분석해보면 다음과 같다.변수와 변수 선언함수 구성 및 함수 호출main() 함수 : ma
이번 포스팅에서는 C++의 자료형(data type)에 대해서 다뤄보겠다. 단, 구조체(struct), enum, 클래스(class) 같은 것은 나중에 다룰 것이고, 정수형과 같은 정말 기본적인 자료형에 대해서만 다룰 예정이다.
이번 포스팅에서는 C++의 기본 연산자들에 대해서 다뤄볼 것이다. 연산자에는 대수 연산자(Arithmetic operator), 논리 연산자(Logical operator), 비트 연산자(Bitwise operator)가 있다. 연산자 재정의라던가 등등은 나중에 다룰
이번에는 조건문과 반복문에 대해서 얘기를 해보자. 그렇게 어렵지 않다. C언어 혹은 파이썬을 통해서 조건문과 반복문을 접한 적 있다면 바로 적용이 가능하다(다만 do-while 문의 경우 파이썬에는 없긴하다).
이번에는 C++에서의 배열 기초에 대해서 다뤄보자. 배열은 매우 중요한 자료형으로, 정말 많이 사용된다.동일한 타입의 메모리를 하나의 단위로 다루기 위해서, 연결된 메모리 형태로 사용하는 자료형C++은 C언어의 배열을 그대로 사용한다.배열은 선언 시에 상수를 통해 메모
이번 포스팅에서는 C++ 함수의 기초에 대해서 다뤄보자.함수는 매개변수(parameter)를 통해 값을 전달받아 정해진 작업에 따라서 처리하고, 결과를 반환(return)하는 코드 블록이다.C++의 함수는 다음과 같이 구성된다(C언어도 동일하다).함수 이름 : 변수와
오늘 이번 포스팅에서는, C++의 네임스페이스(namespace)와 std, 그리고 헤더 파일에 대해서 알아보자. 1. 네임스페이스(namespace) C++ 프로그램을 작성하다보면, 식별자(혹은 이름, identifier)가 충돌하는 경우가 종종 발생한다. 이 같은
이번 포스팅에서는 C++의 기본적인 프로그램 구성과, 키보드 입출력에 대해서 알아보자.이를 보면 기본적인 C++ 프로그램의 구조를 알 수 있다.main 함수는 C++ 프로그램의 실행 부분으로, C++ 프로젝트 내부에는 오직 하나만의 main 함수가 존재해야 한다. ma
C++은 절차 지향 프로그래밍(procedual oriented programming)과 다르게, 객체 지향 프로그래밍(object oriented programming)을 추구하는 프로그래밍 언어이다. 따라서 C++에서 객체의 개념을 이해하고 공부하는 것은 매우 중요
지난번에 이어서 클래스에 대해서 계속 공부해보자.이번에는 생성자에 대해서 본격적으로 다뤄볼 것이다클래스는 객체가 생성될 때 자동으로 실행되는 생성자(constructor)라는 멤버 함수를 통해서 객체를 초기화 할 수 있다. 여러 생성자를 작성할 수 있지만, 실행되는 것
https://www.acmicpc.net/problem/15552백준 15552번, 빠른 A+B를 통해서 C++의 빠른 입출력 팁을 알아내보자.참고한 링크는 다음과 같다.https://st-lab.tistory.com/232먼저 정답 코드는 다음과
계속해서 클래스와 객체에 대해서 생각해보자.이번 포스팅에서 다룰 내용은 다음과 같다.1\. 소멸자(destructor)2\. 접근 지정자(access specifier)3\. 인라인 함수(inline function)4\. 구조체(struct)5\. C++ 프로그램 작
이번 포스팅에서는 C++ 코드의 작성 방법 중 하나인, 헤더 파일과 cpp 파일의 분리에 대해서 알아보자.C++의 소스 코드는 통상적으로 다음과 같이 작성하는 경우가 많다.함수나 클래스의 선언부는 헤더 파일에, 구현부는 cpp 파일에 작성main() 함수와 전역 변수는
C++에서의 메모리 모델은 프로그램이 실행될 때 사용하는 메모리를 구분하여, 효율적으로 관리하는데 중요한 역할을 한다. 이번 포스팅에서는 C++의 메모리 모델에 대해서 공부해볼 것이다.스택 메모리는 함수 호출 시 자동으로 할당되고, 해제되는 메모리 영여깅다. 지역 변수
C++에서 Object Lifetime은 객체가 생성되고, 사용되고, 소멸되는 기간을 총체적으로 부르는 명칭이다. Lifetime은 C++의 메모리 모델과도 밀접하게 연관이 되어있고, 어느 메모리 영역에 할당되어있는지에 따라서도 구분지을 수 있다. 이번 포스팅에서는 O
C언어와, C언어와 강력한 호환성을 자랑하는 C++에서는 포인터(pointer)라는 개념이 사용되낟. 이번 포스팅에서는 포인터에 대해서 알아보자.💡 포인터 실행 중인 메모리의 주소 값으로, 주소를 이용해서 메모리에 직접 값을 쓰거나, 메모리로부터 값을 읽어올 수 있
이전에 이어서, 포인터에 대해서 계속 공부해보자. 이번에 다룰 포인터는 메모리 사용과 관련이 깊은, 스마트 포인터(smart pointer)와 raw 포인터(raw pointer)이다.raw 포인터는 앞서 설명한 바와 같이 C++에서 기본적으로 사용되는 포인터이다. 이
이번부터는 C++의 객체 포인터, 객체 배열, 그리고 동적 할당에 대해서 알아보자. 1. 객체 포인터 C++에서는 객체를 다루기 위해서 객체에 대한 포인터 변수를 선언하고, 이 포인터 변수를 통해서 객체 멤버 변수를 읽고, 값을 쓰거나, 멤버 함수를 호출할 수 있다.
이번에는 개발자가 직접 힙 메모리(heap memory) 구역에 메모리를 동적으로(dynamic) 할당(allocate)하거나 해제(deallocate)하는 연산자인 new와 delete에 대해서 알아보자. 앞에서 Raw pointer에 대해서 공부하면서 기본적인 것은
앞선 정리 포스팅에서 언급하였듯, C++에서는 문자열을 사용할 수 있는 방법이 2가지가 있다. cstring string 클래스 cstring은 null 문자(\0)로 끝나는, 전통적인 C언어의 문자열 처리 방식이고, string 클래스는 C++ 표준 라이브러리에서
이번에는 C++의 함수, 참조, 복사 생성자에 대해서 공부를 해보자. 함수의 인자(argument) 전달 인자 전달 방식 고급 프로그래밍 언어에서 인자 전달 방식(argument passing)은 다음과 같다. > * - 값에 의한 호출(call by value) *
이번 포스팅에서는 함수의 중복과 static 멤버에 대해서 알아볼 것이다. 함수 중복 > 💡 * 함수 중복(function overloading) * C++에서는 C와 다르게 함수를 여러 개를 만들 수 있으며, 이것을 함수 중복(function overloading