[ C++ ] 객체지향 언어 C++ | C++ 주석, namespace 예제, 데이터 타입, C++ 출력하기

2021. 3. 9. 10:40·Archive/Develop
728x90
반응형

 

 

 

이미지 출처 : https://ko.wikipedia.org/wiki/C%2B%2B

 

 

 

 

C++ 언어의 표준

 

1998년 미국 표준원인 ANSI 에서 C++ 언어에 대한 표준이 설정되었다.

 

 

C언어를 설계한 주요 목적

 

  • C와의 호환성이 좋다.
  • 실행 시간의 효율성 저하를 최소화한다.
  • 엄격한 타입체크
  • 객체지향 개념 도입

 

 

C언어에 추가한 기능

 

  • 함수 중복 : 매개 변수의 개수나 타입이 다른 동일한 이름의 함수들 선언
  • 디폴트 매개변수 : 매개 변수에 디폴트 값이 전달되도록 함수 선언
  • 참조와 참조 변수
  • 참조에 의한 호출
  • new/delete 연산자
  • 연산자 재정의 : 기존 C++ 연산자에 대한 추가된 정의
  • 제네릭 함수와 클래스 : 데이터 타입에 의존하지 않고 일반화시킨 함수나 클래스 작성 가능

 

 

C ++ 객체 지향 특성 - 캡슐화

 

캡슐화

 

데이터를 캡슐로 싸서 외부의 접근으로부터 보호

C++에서 클래스로 캡슐을 표현한다.

 

 

C ++ 객체 지향 특성 - 상속

 

C ++ 객체 지향 특성 - 다형성

 

다형성

 

: 하나의 기능이 경우에 따라 다르게 보이거나 다르게 작동하는 현상

 

함수뿐만 아니라 연산자도 오버로딩 가능하다.

 

 

 

C ++ 은 C 언어와 호환성을 추구한다.

 

장점 : 기존에 개발된 C 프로그램 코드를 활용가능하다.

 

단점 : 캡슐화의 원칙이 무너진다.

 

따라서 C++에서 전역변수와 전역 함수를 사용할 수 밖에 없고, 부작용이 발생할 수 있다.

 

 

 

 

C++ 맛보기

 

 

기존 C 코드

#include<stdio.h>

int main() {
	printf("Hello World!");
	return 0;
}

 

 

#include<iostream>

int x = 10; // 전역변수

int main() { // 운영체제에서 가장 먼저 호출하는 함수
	std::cout << "Hello World!"; //printf("Hello World!");
	return 0;
}

//표준화 되기 전에는 void main(){} 으로 사용하기도 했었지만, 지금은 표준화 되었다.

 

#include<iostream>

int x = 10; // 전역변수

int main() { // 운영체제에서 가장 먼저 호출하는 함수
    std::cout << "Hello World!" << std::endl;
    std::cout << "hihi";
    return 0;
}

 

줄바꿈은 위와 같이 표현할 수 있는데, std:: 이거 너무 쓰기 귀찮다? 그렇다면 아래같이 작성할 수도 있다.

 

 

#include<iostream>
using namespace std; // std: cout, endl, cin 등등

int main() { // 운영체제에서 가장 먼저 호출하는 함수
    cout << "Hello World!" << endl;
    cout << "hihi";
    return 0;
}

 

 

 

namespace 만들기

 

 

프로젝트 규모가 커지고, 여러 사람이 같은 프로젝트를 개발하다 보면,

함수 이름이나 변수이름이 충돌이 발생할 수 있다.

 

따라서 이름 충돌을 해결하기 위해 namespace 키워드를 이용한다.

 

std 는 C++ 표준에서 정의한 이름 공간 중 하나이고,

 

std:: 을 생략하고 싶다면, using 지시어를 사용하면 된다.

 

 

 

#include<iostream>
using namespace std; // std: cout, endl, cin 등등
namespace kim {
    int a;
    void show() {}
}
int main() { // 운영체제에서 가장 먼저 호출하는 함수
    cout << "Hello World!" << endl;
    cout << "hihi";

    kim::a = 100;
    cout << kim::a << endl;

    return 0;
}

 

 

 

C++ 주석

 

여러 줄 주석 /* */

한 줄 주석 //

 

 

 

main 에서 개발자의 편의를 위해 return 0 는 생략 가능하다.

 

 

C++ 데이터 타입

 

  • bool : c 에 비해 하나 더 생겼다!
  • char
  • short
  • int
  • long
  • float
  • double

 

 

 

 

728x90
반응형

'Archive > Develop' 카테고리의 다른 글

[ CodeUp ] Python 기초 100제 | 6007 번 풀이  (0) 2021.03.10
[ C++ ] C++ 포인터 | C++ 로또 , 랜덤 숫자, 최대값 구하기  (0) 2021.03.09
[ Oracle ] 변환함수 (to_char, to_number, to_date)  (0) 2021.03.08
[ 인공지능 ] Google Colab 이란? | Colab 사용하기 | Colab 기초 사용법  (3) 2021.03.08
[ Oracle ] Oracle scott 스키마 설치하기 | 제약 조건 설정하기 | 제약조건 스키마 | 제약 조건 확인하기  (0) 2021.03.08
'Archive/Develop' 카테고리의 다른 글
  • [ CodeUp ] Python 기초 100제 | 6007 번 풀이
  • [ C++ ] C++ 포인터 | C++ 로또 , 랜덤 숫자, 최대값 구하기
  • [ Oracle ] 변환함수 (to_char, to_number, to_date)
  • [ 인공지능 ] Google Colab 이란? | Colab 사용하기 | Colab 기초 사용법
코뮤(commu)
코뮤(commu)
코딩으로 커뮤니케이션하는 코뮤입니다 😎
  • 코뮤(commu)
    코뮤(COMMU)
    코뮤(commu)
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Archive
        • Hacking
        • Develop
        • ETC
      • Algorithm
      • DB&Infra
      • ETC
      • Node
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • IT지식보따리
    • IT가 맛있다
    • IT 천재
  • 공지사항

    • 배고픕니다
  • 인기 글

  • 태그

    파이썬 문제
    코드업 파이썬 기초 100제
    백준 파이썬
    파이썬 기초 문제
    비박스
    Python
    코드업 기초
    오라클
    자바스크립트
    코드업
    백준 문제풀이
    Git
    javascript
    docker
    Oracle
    카카오 100일 프로젝트
    장고
    파이썬 백준
    Django
    Codeup
    보안뉴스
    oracle db
    파이썬 기초
    자바스크립트 객체
    백준
    C++
    파이썬
    백준 풀이
    자바스크립트 API
    파이썬 알고리즘
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
코뮤(commu)
[ C++ ] 객체지향 언어 C++ | C++ 주석, namespace 예제, 데이터 타입, C++ 출력하기
상단으로

티스토리툴바