※ 주의 사항 ※ 이 글의 목적은 '지식의 전달'이 아닌 '학습의 기록'입니다. 따라서 제가 이해하는 그대로의 내용이 포함됩니다. 따라서 이 글은 사실과는 다른 내용이 포함될 수 있습니다. 열거형은 다음과 같이 두 종류의 포맷을 같습니다. 범위가 없는 열거형(unscoped enum) 범위가 있는 열거형(scoped enum) 범위가 없는 열거형은 각각의 멤버가 전역 변수처럼 프로그램 전체 영역에 영향을 끼치는 열거형을 말합니다. 반면 범위가 있는 열거형은 각각의 멤버가 지역 변수처럼 열거형 타입으로 선언된 변수에 국한되어 영향을 미치는 열거형을 말합니다. 범위가 있는 열거형은 C++11부터 추가되었습니다. 다음의 예제를 통해 두 종류의 열거형의 사용법과 특징들에 대해 알아보겠습니다. enum color..
※ 주의 사항 ※ 이 글의 목적은 '지식의 전달'이 아닌 '학습의 기록'입니다. 따라서 제가 이해하는 그대로의 내용이 포함됩니다. 따라서 이 글은 사실과는 다른 내용이 포함될 수 있습니다. 구조체 C++의 구조체는 C언어의 구조체와 달리 변수 이외에 함수도 멤버로 가질 수 있고, typedef 지시어 또는 using 선언문으로 새로운 데이터 타입을 만들어 이를 멤버로 가질 수도 있습니다. Account 구조체를 정의하고 출금과 계좌 정보를 출력하는 구현하는 예제를 통해 C언어와 C++에서 사용하는 구조체의 차이점에 대해 알아보겠습니다. 먼저 아래는 C언어의 예제입니다. #pragma warning(disable: 4996) #include #include #include struct Account; ty..
※ 주의 사항 ※ 이 글의 목적은 '지식의 전달'이 아닌 '학습의 기록'입니다. 따라서 제가 이해하는 그대로의 내용이 포함됩니다. 따라서 이 글은 사실과는 다른 내용이 포함될 수 있습니다. char 타입 char 타입은 원래 1바이트의 영문자를 나타냅니다. 그러나 만약 char 타입의 배열로 사용한다면, 실제 다음의 예제와 같이 한글이나 한자처럼 1바이트 이상을 차지하는 유니코드를 수용할 수 있습니다. #include #include int main() { char en[] = "Hello world!"; std::cout
※ 주의 사항 ※ 이 글의 목적은 '지식의 전달'이 아닌 '학습의 기록'입니다. 따라서 제가 이해하는 그대로의 내용이 포함됩니다. 따라서 이 글은 사실과는 다른 내용이 포함될 수 있습니다. void 타입 void 타입은 주로 변수의 타입을 지정할 수 없는 경우에 많이 사용합니다. 그에 따라 void 타입은 안정성이 약해 최든 모던 C++에서는 직접적인 사용을 자제하고 있습니다. 아래는 예시입니다. void Foo(void) {}; //void 타입의 사용을 권장하지 않음 void Foo() {}; //매개 변수가 없는 형태로 선언 위의 예시를 보고 void의 사용을 자제하기 위해 함수의 반환 타입에도 역시 void를 사용하지 않는 것이 좋지 않은가? 하고 의문이 들 수 있습니다. 물론 void의 사용을 ..