본문 바로가기
프로그래밍/c++

c++ 기본 문법 정리1

by -현's- 2012. 2. 16.
반응형

●c++은 객체지향 프로그래밍 언어이다



●확장자는 '.cpp' 사용



●c++ 기본구조
ex)
#include <iostream>
int main(){
  std::cout<<"hello world\n";
  return 0;
}



●구조체 - 여러개의 변수를 하나로 묶은것
   클래스 - 변수와 함수를 하나로 묶은것




●오브젝트(object)
-클래스는 변수의 자료형과 같은 것으로 그 자체로는 값을 저장할수 없다. 오브젝트는 클래스를 바탕으로 값을 저장할 수 있는 실체이자




●클래스의 정의
ex)
class Aaa{
   public:                           //접근 제한자 뒤에 ':(콜론)''붙임, 접근제한자 생략하면 모든 멤버는 private가 된다
      void Add(int a);            //클래스 외부에 함수 정의
      int Del(int b){               //클래스 내부에 함수 정의
          return b;
      }
   int x, y;
};                                    //클래스 끝에 ';(세미콜론)' 기술

void Aaa::Add(int a){           //'클래스명::함수명'을 써서 어느 클래스의 멤버함수인지 구분
   total+=a;
}



●오브젝트(객체)의 생성
 - '클래스명 오브젝트명;'     //변수 선언과 유사하다




●같은 오브젝트 내의 멤버함수 호출 - 그냥 함수명만 기술하면 된다


●다른 오브젝트의 멤버함수를 호출 - '.(피리어드)'를 사용한다
- '오브젝트명.함수명();'




●생성자(constructor) - 오브젝트를 생성할때 자동적으로 호출되는 특수한 함수. 생성자는 public로 해야한다.
ex)
class Aaa{
   public:
      Aaa();                  //생성자는 반환값이 없고, void형 지정도 하지 않는다.
};
Aaa:Aaa(){
   total=0;
}
int main(){
   Aaa a;
}




●소멸자(destructor)
- 오브젝트가 소멸할때 호출됨. public로 해야한다. 프로그래머가 소멸자를 정의하지 않으면 디폴트로 준비도니다. 클래스 안에 하나만 정의할 수 있다. 소멸자의 선언은 '~'를 기술하여 쓴다.
ex)
class Aaa{
   public:
      Aaa();
     ~Aaa();
};
Aaa::~Aaa(){
   printf("임수 완료\n");
}




c언어에서는 블록안의 선두에서 변수를 선언해야 했지만

c++에서는 변수를 사용하기 전이라면 어디에서나 선언할 수 있다.

될수 있으면 변수선언은 사용하기 직전에 하는게 좋다



●c++에서는 for문안에 카운터를 선언할 수 있다.
ex)
for( int i=1; i<5; i++ )



반응형

'프로그래밍 > c++' 카테고리의 다른 글

c++ visual c++로 프로젝트 시작하기  (0) 2013.06.11
c++ 폴더안에 있는 헤더파일 include  (0) 2013.05.26
c++ 기본 문법 정리4  (0) 2012.02.17
c++ 기본 문법 정리3  (0) 2012.02.17
c++ 기본 문법 정리2  (0) 2012.02.16

댓글