본문 바로가기

728x90
반응형

C++

(31)
[C++] C++에서 C언어 헤더파일 호출 C++에서 C표준 헤더파일 호출 C++에서 C언어 헤더파일을 호출하는 것도 가능하다. 아래 코드처럼 그냥 include 해도 문제없이 사용이 가능하다. #include #include #include #include 그러나 이것보다는 .h를 빼고 c를 붙여서 다음과 같이 선언하는 것이 좋다. #include #include #include #include 위와 같이 사용하면 .h를 사용했을 때 보다 C++에 최적화된 함수들을 사용할 수 있다. 예를 들어 C표준에서 abs 함수는 다음과 같이 선언되어 있다. int abs(int num); 그러나 C++에서는 다음과 같이 오버로딩이 되어 있다. long abs(long num); float abs(float num); double abs(double num..
[C++] 인라인 함수 (inline function) 인라인 함수 인라인 함수는 C언어에서의 매크로함수의 장점만을 가져온 함수라고 할 수 있다. 매크로 함수는 일반적인 함수에 비해 실행속도가 빠르지만 정의하기 어려우며 복잡한 함수의 정의에 한계가 있다. 따라서 인라인 함수를 사용하면 정의하는 것은 어렵지 않으면서도 실행속도는 빠르게 할 수 있다. 인라인 함수를 사용하고 싶으면 함수를 선언할 때 inline 지시자를 명시해 주면 된다. inline int SQUARE(int x) { return x*x; }
[C++] 이름공간 (namespace) namespace 이름공간이란 코드에 이름을 붙여주기 위한 장치라고 생각하면 좋다. 예를 들어 두 개의 팀이 협업을 할 때 서로의 팀에서 변수나 함수명이 겹치는 것을 방지하기 위해서 사용할 수 있다. 예를 들어 팀 A와 팀 B의 코드를 구분하기 위해 두 개의 네임스페이스를 코드로 작성해보겠다. namespace TeamA { int a; int b; int sum(int a, int b) { return a + b; } } namespace TeamB { int a; int b; int c; int sum(int a, int b, int c) { return a + b + c; } } 위와 같이 네임스페이스를 선언하면 같은 변수라도 구분해서 사용하는 것이 가능하다. 네임스페이스로 구분한 변수나 함수를 사..
[C++] 디폴트 매개변수 (Default Value, Default Parameter) 디폴트 매개변수 디폴트 매개변수란 매개변수에 기본적으로 설정되어 있는 값을 의미한다. 즉, 함수의 호출 시 Argument 가 전달되지 않았을 때 매개변수에 저장될 값을 미리 선언하는 것이다. 코드로 보면 좀 더 이해가 빠를 수 있을 것이다. #include int func(int a = 10) { return a+5; } int main() { std::cout
[C++] 함수 오버로딩 함수 오버로딩 C언어에서는 이름이 동일한 함수의 선언을 허용하지 않는다. 그러나 C++에서는 함수의 이름이 같더라도 선언된 매개변수의 자료형이 다르면 함수의 선언을 허용하고 있다. C++에서는 함수를 호출할 때 함수의 이름과 매개변수의 선언을 모두 확인하기 때문이다. 따라서 아래 코드와 같은 함수의 선언이 가능하다. #include int func(int a) { return a; } int func(int a, int b) { return a + b; } int func(int a, int b, int c) { return a + b + c; } int main() { std::cout
[C++] 지역변수 선언에 있어서 C언어와의 차이 지역변수 선언 C언어에서 일부 컴파일러는 함수를 정의할 때 지역변수의 선언이 항상 제일 먼저 등장해야만 한다. 그러나 C++ 은 모든 컴파일러에서 지역변수의 선언에 있어서 위치 제한을 두지 않는다. 따라서 아래와 같은 코드도 모든 컴파일러에서 유효하게 동작한다. #include int main() { int num1; std::cout > num1; int num2; std::cout > num2; int sum = num1 + num2; std::cout
[C++] 입출력 방식 (std::cout, std::cin) iostream C언어에서는 입출력 함수인 prinft와 scanf를 사용하기 위해서 stdio.h 헤더파일을 사용한다. C++에서도 마찬가지로 입출력을 위해 헤더파일 선언을 해야한다. 이 때 사용하는 헤더파일이 iostream.h 이다. 출력 방식 C++ 에서는 std::cout 와

728x90
반응형