Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 카카오프로젝트
- php
- python
- 다크웹
- 보안뉴스
- 보안뉴스한줄요약
- 자바스크립트 element api
- 보안뉴스 한줄요약
- 카카오프로젝트100
- 보안뉴스요약
- ES6
- oracle
- 자바스크립트 jQuery
- 카카오프로젝트 100
- GIT
- 깃허브
- 랜섬웨어
- 자바스크립트 prototype
- Oracle SQL
- 자바스크립트 API
- javascript
- 파이썬
- 자바스크립트 객체
- oracle db
- 보안뉴스 요약
- 자바스크립트 기본 문법
- numpy
- 자바스크립트
- 자바스크립트 node
- 오라클
Archives
- Today
- Total
FU11M00N
[ C++ ] namespace 예제, 데이터 타입, C++ 출력 본문
- C++ 언어의 표준
1998년 미국 표준원인 ANSI 에서 C++ 언어에 대한 표준이 설정되었습니다.
- C언어를 설계한 주요 목적
- C와의 호환성이 좋습니다.
- 실행 시간의 효율성 저하를 최소화합니다.
- 엄격한 타입체크합니다.
- 객체지향 개념 도입 합니다.
- C언어에 추가한 기능
- 함수 중복 : 매개 변수의 개수나 타입이 다른 동일한 이름의 함수들 선언 합니다.
- 디폴트 매개변수 : 매개 변수에 디폴트 값이 전달되도록 함수 선언 합니다.
- 참조와 참조 변수합니다.
- 참조에 의한 호출합니다.
- new/delete 연산자합니다.
- 연산자 재정의 : 기존 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++ 데이터 타입
- bool
- char
- short
- int
- long
- float
- double
'Programming > C++' 카테고리의 다른 글
[ C++ ] 임의의 문자 알아맞추기 게임 (행맨) (0) | 2021.04.13 |
---|---|
[ C++ ] C++ 으로 구현한 은행프로그램 (feat. 동적할당) (0) | 2021.03.30 |
[ C++ ] 재밌는 티비 놀이 (0) | 2021.03.30 |
[ C++ ] C++ 객체 , 클래스 만들기 (0) | 2021.03.23 |
[ C++ ] C++ 포인터 | C++ 로또 , 랜덤 숫자, 최대값 구하기 (0) | 2021.03.10 |
Comments