chap10.PDF

Similar documents
K&R2 Reference Manual 번역본

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

int main(void) int a; int b; a=3; b=a+5; printf("a : %d \n", a); printf("b : %d \n", b); a b 3 a a+5 b &a(12ff60) &b(12ff54) 3 a 8 b printf(" a : %x \

제 1 강 희망의 땅, 알고리즘

C++-¿Ïº®Çؼ³10Àå

PowerPoint 프레젠테이션

초보자를 위한 C# 21일 완성

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

BACK TO THE BASIC C++ 버그 헌팅: 버그를 예방하는 11가지 코딩 습관

C++ Programming

PowerPoint 프레젠테이션

01-OOPConcepts(2).PDF

자바 프로그래밍

The C++ Programming Language 4 장타입과선언 4.11 연습문제 Hello,world! 프로그램을실행시킨다. 프로그램이컴파일되지않으면 B3.1 을참고하자. #include<iostream> //#include 문, 헤더파일, 전처리지시

Design Issues

C++ Programming

Microsoft PowerPoint - C++ 5 .pptx


1

untitled

금오공대 컴퓨터공학전공 강의자료

03장.스택.key

OCW_C언어 기초

초보자를 위한 C++

PowerPoint 프레젠테이션

Microsoft PowerPoint - Chapter_04.pptx

PowerPoint 프레젠테이션

untitled

Microsoft PowerPoint - Chapter 6.ppt

Microsoft PowerPoint - additional08.ppt [호환 모드]

untitled

chap8.PDF

C++ Programming

untitled

C++ Programming

Microsoft PowerPoint - chap12-고급기능.pptx

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074>


중간고사

Microsoft PowerPoint - Chapter 10.ppt

(Microsoft Word - \301\337\260\243\260\355\273\347.docx)

02 C h a p t e r Java

, ( ),, ( ), 3, int kor[5]; int eng[5]; int Microsoft Windows 4 (ANSI C2 ) int kor[5] 20 # define #define SIZE 20 int a[10]; char c[10]; float

초보자를 위한 자바 2 21일 완성 - 최신개정판

C프로-3장c03逞풚

C 언어 프로그래밊 과제 풀이

C# Programming Guide - Types

Microsoft PowerPoint - 8ÀÏ°_Æ÷ÀÎÅÍ.ppt

Modern Javascript

untitled

5장.key

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

PowerPoint Template

PowerPoint Template

Microsoft PowerPoint - ch07 - 포인터 pm0415

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout << " 양수입력 : "; cin >> *p; if (*p <= 0) cout << " 양수를입력해야합니다 " << endl; return; 동적할

슬라이드 1

untitled

Microsoft PowerPoint - 02-Class Review.pptx

Microsoft PowerPoint - [2009] 02.pptx

class Sale void makelineitem(productspecification* spec, int qty) SalesLineItem* sl = new SalesLineItem(spec, qty); ; 2. 아래의액티비티다이어그램을보고 Java 또는 C ++,

쉽게 풀어쓴 C 프로그래밍

05-class.key

歯9장.PDF

슬라이드 1

Microsoft PowerPoint - additional06.ppt [호환 모드]

Microsoft PowerPoint - chap10-함수의활용.pptx

강의10

C++ 기본문법 정리

OCW_C언어 기초

5.스택(강의자료).key

컴파일러

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

13주-14주proc.PDF

Microsoft PowerPoint - 9ÀÏ°_ÂüÁ¶ÀÚ.ppt

080629_CFP °ø°³¿ë.hwp

OCaml

Microsoft PowerPoint - additional07.ppt [호환 모드]

MPLAB C18 C

Microsoft PowerPoint - chap03-변수와데이터형.pptx

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

기초컴퓨터프로그래밍

Microsoft PowerPoint - lecture2.ppt

歯7장.PDF

chap7.PDF

초보자를 위한 C++

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

11장 포인터

03-JAVA Syntax(2).PDF

untitled

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

<4D F736F F F696E74202D20C1A63132B0AD20B5BFC0FB20B8DEB8F0B8AEC7D2B4E7>

ABC 2장

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - chap11-포인터의활용.pptx

Microsoft PowerPoint - Chapter_09.pptx

비긴쿡-자바 00앞부속

Transcription:

10 C++ Hello!! C

C C++ C++ C++ 2

C++ 1980 Bell Bjarne Stroustrup C++ C C++ C, C++ C C 3

C C++ (prototype) (type checking) C C++ : C++ 4

C C++ (prototype) (type checking) [ 10-1] #include<stdio.h> extern type_c(); extern type_num1(double x); extern type_num2(const char*,int); int a,b; main(){ } type_c(); type_num1(a,b); type_num2(a,b); //C //C++ // : // : // : 5

C C++ [ 10-2] int max( int value1, int value2 ) return ((value1 > value2)? value1 : value2); C++ 6

C C++ [ 10-3] #include <math.h> extern double sin (double); int main(void){ double result; result = sin(60); return 0; // :result= sin(60.0) //c } 7

C C++ C++ ANSI C C C++ C++ C++ C C++ ANSI C void 8

C C++ (default) 9

C C++ (default) [ 10-4] #include <iostream.h> int max(int value1, int value2 = 0) { // value2 0 return ((value1 > value2)? value1 : value2); } int main(void) { int x,y; x = max(4, 3); cout << x << \n ; y = max(-2); cout << y << \n"; return 0; [ ] } 4 0 10

C C++ (enumeration) C++ (constant) const C C++ C int C++ (enumerator) 11

C C++ (8) (declaration extension) C++ C C++ C C++ 'struct' 'enum' 12

C++ (comment) C++ C ( /* */ ) ( // ) :, [ 10-5] int main(void){... y=3+x; /* C */ k=7+y; // C++... } 13

C++ (constant type) C++ C++ 'const' 'const' [ 10-6] #include<iostream.h> const char a='a'; // a const int b; // : const double c=1.48; int main(void){ //A cout<< a; c=2; // : return 0; } 14

C++ (constant type) [ 10-7] const int a=0; int *p = &a; // : *p++; [ 10-8] char *const str1 = "Hello"; // char const *str2 = "I am a boy"; // 15

C++ (reference type) C++ '&' '*' (alias), '&' [ 10-9] int a,b; int &pa =a; double &c=b; // : int &d=18; // : // // const int &e= 24; // // data // 16

C++ C++ (copy) C '*' [ 10-10] /* C : */ /* */ void replace_c(int *a,int *b) { int temp; /* */ temp=*a; /* a temp */ *a=*b; /* b a */ *b=temp; /* temp b */ } 17

C++ C++ C C++ '&' [ 10-11] //C++ : void replace_c++(int &a,int &b){ // int temp; // temp=a; // a temp a=b; // b a b=temp; //temp b } 18

C++ C '&' '*' [ 10-12] struct my_age{ int age=9; }; // my_age exp void R_my_age(const my_age& exp) { int x=exp.a; exp.a=0; // : } // 19

C++ new delete C++ 'new' 'delete' malloc new new sizeof [ 10-13] p=new int[size]; // size // delete p; // 20

C++ (scope operator) C C++ C++ '::' [ 10-14] #include<iostream.h> int a=10; // a int main(void){ int a=20; // a cout << "local variable a =" << a <<"\n"; // a cout <<"global variable a =" << :: a <<"\n"; // a return 0; } [ ] local variable a =20 global variable a =10 21

C++ (overload) C++ C++ [ 10-15] #include<iostream.h> #define PI 3.141592654 double area(double r){ // double double area; area=pi*r*r; return(area); } 22

C++ (overload) [ 10-15] ( ) float area(float r){ float area; area=pi*r*r; return(area); } int main(void){ float a,b; double c,d; a=23.54; c=23.54; b=area(a); cout<< b <<"\n"; d=area(c); cout<< d <<"\n"; return 0; } [ // float // //a area //a area ] 1740.86 1740.86 23

C++ (overload) C++ C++ '::', '.*', '.', '?:' [ 10-16] complex operator+(complex a,complex b) { return complex(a.real+b.real, a.imag+b.imag); } 24

C++ (inline) 25

C++ [ 10-17] #include<iostream.h> #include<stdio.h> #ifdef cplusplus inline int max(int a, int b){ return ((a > b)? a : b); } #endif int main(void) { int x=5; int y=6; int z; z = max(x, y); cout<<z; return 0; } [ ] 6 // max() // z=((x > y)? x : y) 26

C++ 'class' 'class' (data member) (member function) 27

C++ [ 10-18] class My_class{ private: //private static int my_private; // protected: //protect int my_protected; // protect public: //public static void Openpub(); // My_class(); // virtual ~My_class(); // virtual double My_const() const; //const virtual void My_virtual(); // }; // 28

C++ 'static' 'const' const 'virtual' 'friend' '~' 29

C++ (data member) (member function) C '::' ( ) 30

C++ 'private', 'protected', 'public' public public private protected private private protected public private 31

C++ C [ 10-19]... class My_class{...}; //My_class My_class object_1; //My_class object_1.my_virtual(); //object_1 My_virtual object_1.my_protected=1; //object_1 my_protected 1 My_class *object_2 = &object_1; // object_2 object_2 -> My_virtual(); // object_2 My_virtual() object_2 -> my_protected = 1; // object_2 my_protected 1 32

C++ '.' '.' '.' '->', 33

C++ (constructor) (destructor) '~' 1 1 34

C++ 2 35

C++ (friend) C++ 36

C++ [ 10-20] #include<iostream.h> class num2; // num2 class num1{ private: int number; public: friend int equal_or_not(num1 num1_ex, num2 num2_ex); void save_num(int a); }; class num2{ private: int number; public: friend int equal_or_not(num1 num1_ex, num2 num2_ex); void save_num(int a); }; 37

C++ [ 10-20] ( ) int equal_or_not(num1 num1_ex, num2 num2_ex){ // equal_or_not if(num1_ex.number == num2_ex.number) return 1; else return 0; } // number save_num void num1::save_num(int a){ number=a; } void num2::save_num(int a){ number=a; } 38

C++ [ 10-20] ( ) int main(void){ num1 num1_ex; num2 num2_ex; num1_ex.save_num(5); num2_ex.save_num(5); //private number 5 if(equal_or_not(num1_ex, num2_ex)==1) cout<< "equal\n"; else cout << "not equal"; return 0; } [ ] equal 39

C++ (member) 'static' '.', '->' '::' 40

C++ const const C++ int float 'const' const 'const' const const const const const const 41

(object oriented programming),, 42

(object) C++ 43

(polymorphism) C++ 2 44

(inheritance) 45

C++ [ 10-21] class college{ int college_prof; // int location; // public: int get_college_prof(int a); // int get_location(int a); }; // [ 10-22] class department : public college{ // int student; // int opened_class; // public: int get_student(int a); // int get_opened_class(int a);}; // 46

[ 10-23] #include<iostream.h> class college{ int college_prof; // int location; // public: int get_college_prof(int a); // int get_location(int a); // }; class department : public college{ // int student; // int opened_class; // public: int get_student(int a); // int get_opened_class(int a); // }; 47

[ 10-23] // int college::get_college_prof(int a){ college_prof=a; return college_prof; } int college::get_location(int a){ location=a; return location; } int department::get_student(int a){ student=a; return student; } int department::get_opened_class(int a){ opened_class=a; return opened_class; } 48

[ 10-23] int main(void){ department A; //department A int A_college_prof=10; int A_location=2; int A_student=200; int A_opened_class=15; // cout<<"professor="<<a.get_college_prof (A_college_prof)<<"\n"; cout<<"location="<<a.get_location (A_location) <<"\n"; cout<< "student=" <<A.get_student (A_student)<<"\n"; cout<< "Opened class="<<a.get_opened_class(a_opened_class); return 0; } [ ] professor=10 location=2 student=200 opened class=15 49

(base) (derived) [ 10-24] // Child_My_class::Child_My_class():My_class (){. }; // Child_My_class::~Child_My_class(){. }; 50

(base) (derived) 51

52 protected public private public private private

(multiple inheritance) [ 10-25] //A B public // Child_A_and_B class Child_A_and_B : public A, public B{... }; 53

: C++ C++. 54

(virtual function) 'virtual', 55

C++ C++ C [ 10-26] class Location{ // int X,Y; //2 public: Location(); Location(int x); //1 }; 56

C++ [ 10-27] // class Location{ int X,Y; //2 public: operator float_length() const; //Location float }; Location::operator float_length() const{ return (float)(x*x+y*y); } 57

this this 58

C++ this 59

[ 10-28] #include<iostream.h> class My_Plus{ public: int num; friend My_Plus operator+(my_plus object,int a); friend My_Plus operator+(int a,my_plus object); }; // + My_Plus operator+(my_plus object, int a){ My_Plus obj; obj.num = object.num + a; return obj; } 60

[ 10-28] // + My_Plus operator+( int a, My_Plus object){ My_Plus obj; obj.num = object.num + a; return obj; } int main(void){ My_Plus Apple; Apple.num =3; Apple = 2 + Apple; Apple = Apple + 5; cout << Apple.num; return 0; } [ ] 10 61