본문 바로가기

Program Language/c++35

c++ 기초(enum) 이글은 "전문가를 위한 c++(개정4판)"을 학습한 내용을 직접 실습해보며 정리한 Review용 글입니다. enum(열거타입) 열거 타입은 변수를 특정 값의 범위로 제한하고 싶을 때 많이 사용하는 타입입니다. 예를 들어 체스 게임에서 체스말을 표현하는 변수의 값을 4가지 값으로 제한하고 싶다면 다음과 같이 enum 타입의 변수를 새로 정의해서 사용하면 됩니다. enum PieceType { PieceTypeKing, PieceTypeQueen, PieceTypeRook, PieceTypePawm }; 이렇게 선언한 열거형 타입 변수에 값을 대입하거나 변화시키려는 행위를 하면 컴파일 에러가 발생합니다. PieceType myPiece = PieceTypePawm; myPiece = 0; // 값 대입 : .. 2023. 1. 2.
c++ 기초(연산자) 이글은 "전문가를 위한 c++(개정4판)"을 학습한 내용을 직접 실습해보며 정리한 Review용 글입니다. 연산자 c++ 연산자에는 단항(unary) 연산자, 이항(binary) 연산자, 삼항(ternary) 연산자가 있습니다. 가장 많이 쓰이는 연산자는 이항연산자로 =, +, -, *, %, /, +=, *=, /=, %=, &, &=, |, |=, , =, ^, ^= 있습니다. 또 단항 연산자로는 !, ++, --,이 있고, 삼항연산자로는 [조건]?[동작1]:[동작2]로 표현되는 조건 연산자가 있습니다. 다음 표는 연산자의 종류와 사용 예를 나타내는 표입니다. = 오른쪽 값을 왼쪽의 표현식에 대입하는 이항 연산자 Int i; i = 3; int j; j = i; ! 표현식의 참/거짓(또는 0이 아닌 .. 2022. 12. 29.
c++ 기초(리터럴 & 변수) 이글은 "전문가를 위한 c++(개정4판)"을 학습한 내용을 직접 실습해보며 정리한 Review용 글입니다. 리터럴(literal) 리터럴은 숫자나 스트링같은 값을 의미합니다. c++은 다양한 표준 리터럴을 제공합니다. 십진수 리터럴 : 예) 123 이진수 리터럴 : 예) 0b1111011 (십진수 : 123) 8진수 리터럴 : 예) 0173 (십진수:123) 16진수 리터럴 : 예) 0x7B (십진수 :123) 부동소수점 리터럴: 예) 3.14f 배정도 부동소수점 리터럴 : 예) 3.14 16진수 부동소수점 리터럴(c++17이상) : 예) 0x3.ABCp-10, 0xb.cp121 단일 문자 : 예) 'a' '0'으로 끝나는 문자 배열 : 예) "character array" 숫자 리터럴에서는 자릿수 구분.. 2022. 12. 26.
c++ 기초(namespace) 이글은 "전문가를 위한 c++(개정4판)"을 학습한 내용을 직접 실습해보며 정리한 Review용 글입니다. 네임스페이스(namespace)는 코드에서 동일이름이 서로 충돌하는 문제를 해결하기 위해 나온 개념입니다. 예를 들어 foo()라는 함수를 정의를 했는데 기존에 사용한 코드나 라이브러리에 foo()라는 함수가 있다면 간단하게는 이름을 변경하면 되지만 그럴 수 없는 상황이라면 네이스페이스가 그 해결책이 될 수 있습니다. 다음과 같이 mycode라는 네임스페이스로 묶으면 기존 foo() 함수와 서로 구분될 수 있습니다. namespace mycode { void foo(); } 구현 부분도 namespace 공간에 묶여야합니다. void mycode::foo() { std::cout 2022. 12. 22.
c++ 기초("Hello, World!") 이글은 "전문가를 위한 c++(개정4판)"을 학습한 내용을 직접 실습해보며 정리한 Review용 글입니다. Hello, World! 프로그램언어의 공식 예제인 "Hello, World!" 코드를 통해 간단하고 중요한 개념들을 알아봅시다. //helloworld.cpp /*프로그래밍 언어의 공식 예제 'Hello,World */ #include int main() { std::cout 2022. 12. 22.