728x90

namespace

-  심볼(변수, 함수, 클래스)의 유효(소속) 범위를 설정

:: 스코프 연산자 로 심볼의 소속을 나타낸다.

(범위 확정 연산자, the scope-resolution operator)

-  같은 이름의 심볼을 구분한다. -> 충돌 방지

 

형식

namespace identifier

{

[declaration-list]

}

 

 

 

 

 

 

cout   출력 (std namespace에 속해 있는 클래스)

<< 연산자(insertion operator)

cout로 바이트 단위로 데이터를 보내는 역할

 

cout<<변수 또는 상수

endl   cout에서 는 개행문자(\n)와 같음

 

 

 

cin>>변수1>>변수2>>변수3;

>>연산자(추출 연산자, extraction operator)

입력된 데이터를 바이트 단위로 가져오는 역할

 

한 문자를 입력 하는 방법

>> 추출 연산자를 이용하는 방법

 

cin.get(cVal); 함수를 이용한 방법

 

문자열을 입력하는 방법

string 문자열 및  getline(cin,변수이름)

- #include <string> // header 파일에 선언

 

 

 

 

 

728x90

1. 데이터형

 

- 부울형:bool

-> 1 byte, false(0), true(1)

* 0과 1 보다는 false 또는 true 를 많이 쓴다.

true(1): 0이 아닌 모든수 예) -1, 7

false(0): 0인 수

 

 

- 문자형:char

- 정수형: int, short, long

- 부동소수점 실수형:float, double

 

- 열거형:enum

 

 

 

- 구조체형:struct

 

 

-void형:함수의 반환값이 없는 것을 명시

타입을 모르는 포인터형을 사용할 때

 

 

 

 

728x90

정보 은닉 방법

구성 과 상속 개념

구성: 분리가 가능(클래스 안에 다른 클래스를 가져오는 형태)

상속: 분리가 안됨

 

 

 

생성자 참조 사이트: http://pacs.tistory.com/entry/C-%EC%83%9D%EC%84%B1%EC%9E%90%EC%99%80-%EC%86%8C%EB%A9%B8%EC%9E%90-Constructor-Destructor-%EC%B2%AB%EB%B2%88%EC%A7%B8

생성자(Constructor)

1.반화형이 없다. 2.인자는 선택적  3.클래스 와 동일 이름

필요성: 객체를 생성과 동시에 초기화를 해주기 위해 필요

예제

 

 #include <iostream>
using namespace std;

class Smart
{
 public:
 int * ip;
 
 Smart() //  생성자는 1.반화형이 없다. 2.인자는 선택적  3.클래스 와 이름이 같다.
 {
 
 }

 void print()
 {
  cout<<" "<< <<endl;
 }
  
}

int main()
{
  
 Smart obj1;
 Smart obj2;
 Smart obj3;

 obj1.ip=0;
 obj2.ip=0;
 obj3.ip=0;

 obj1.print();

 return 0;
}

// 생성자:

 

 

 

복사 생성자(Constructor)

다른 객체로 부터 값을 복사해서 초기화 하는데, 사용

자신과 동일한 타입의 객체에 대한 레퍼런스를 인자로 받는 생성자

인자값에 const를 써준 이유: 값에 의한 전달보다는 상수 객체 참조자에 의한 전달하는 편이 낫다.

 

 

728x90

 

 

728x90

Linux Ubuntu 에서 C++확장자(*.cpp) 컴파일 가능하게 하는 방법

1. 리눅스 로그인 후
2. sudo apt-get install g++

 

우분투 아이디/비번

아이디: ljweng

비번:mi천사

APT(Advanced Packaging Tool)는 원래 데비안 GNU/리눅스에서 소프트웨어 설치 또는 제거 작업(윈도우즈의 '프로그램 추가/제거'를 생각하면 됩니다)을 할 때 쓰는 소프트웨어이며 데비안 GNU/리눅스에서 갈라져 나온 우분투도 이 APT로 소프트웨어 설치 또는 제거 작업을 합니다. 글이 깨져서 나온다면 export LANG=en_US.UTF-8라고 입력한 다음 다시 써 보세요.

패키지 설치하거나 제거하기

우분투에서는 '패키지(package)'라는 단위로 소프트웨어를 관리합니다. 여러분이 원하는 소프트웨어는 하나의 패키지에 담겨 있는 여러 소프트웨어들 가운데 하나일 수도 있고, 반대로 여러분이 원하는 소프트웨어 하나가 여러 개의 패키지로 분리되어 있을 수도 있습니다. 이제 apt로 원하는 소프트웨어를 찾고, 설치하거나 제거하는 방법을 알아봅시다. 여기서는 한글 입력 소프트웨어인 '나비'를 예로 들겠습니다. 우분투에서 나비의 패키지 이름은 nabi입니다. 참고로 패키지를 설치하거나 제거하려면 root의 권한이 있어야 되기 때문에 root 암호를 기억하고 있어야 됩니다.

  • 패키지 찾기
apt-cache search <패키지 이름>
apt-cache search nabi
  • 패키지 설치하기
apt-get install <패키지 이름>
apt-get install nabi
  • 패키지 제거하기
apt-get remove <패키지 이름>
apt-get remove nabi
  • 패키지 다시 설치하기(주로 소프트웨어가 잘못되어 있을 때 쓰입니다)
apt-get reinstall <패키지 이름>
apt-get reinstall nabi

:!:참고) apt-get install 명령어로 받은 deb 파일의 저장 위치

/var/cache/apt/archive/
위 폴더에 .deb 패키지 파일로 저장됩니다.
  • /var/cache/apt/archive/ 비우기
apt-get clean

패키지 관리

apt는 최신 패키지를 다운로드 하여 설치하게 되는데 upgrade 하기전에 update 해서 source.list 를 갱신

  • 패키지 정보보기
apt-cache show <패키지명>
(예: nabi) apt-cache show nabi
  • 소스리스트 업데이트
apt-get update
  • 설치된 패키지들 업데이트
apt-get upgrade
  • 의존성 검사 수행하면서 업그레이드
apt-get -s dist-upgrade
  • CD-ROM 목록 추가
apt-cdrom add
  • 삭제하는 패키지의 설정화일들가지 모두 삭제시
apt-get --purge remove <패키지명>
  • dselect에서 선택한 패키지의 설치 및 삭제
apt-get dselect-upgrade

dpkg를 이용한 프로그램 설치와 제거

  • deb파일 설치
dpkg -i nabi_0.15-2_i386.deb
  • 제거하기
dpkg -P <패키지명>
(예: nabi) dpkg -P nabi
  • 설치 deb파일들의 리스트
dpkg -l
  • 설치된 패키지에 포함된 파일들 보기
dpkg -L nabi
  • deb파일 패키지에 포함된 파일들 보기
dpkg -c nabi_0.15-2_i386.deb
  • deb파일의 정보보기
dpkg -I nabi_0.15-2_i386.deb
  • 파일이 포함된 패키지 이름 알아내기
dpkg -S /usr/bin/nabi
  • 설치된 패키지를 볼때
dpkg -l 패키지명

출처 - 데비안 하우투