본문 바로가기
반응형

코스웨어/10년 시스템제어110

시스템제어 보고서 12번 박철민 순수 가상함수 #include using namespace std; class itisn { public: virtual void test()=0; }; class sca : public itisn { }; int main() { sca obj1; obj1.test(); return 0; } 순수 가상함수로 정의된 test()함수는 자식클래스에서도 test()함수를 만들어줘야한다. 클래스를 동적할당 받아서 사용할시 부모클래스에 가상함수가 선언되어있다면.. 주의할점은 딱한가지. 소멸자도 가상화 시켜야한다는것이다. #include using namespace std; class itisn { public: virtual void test()=0; virtual ~itisn(){} }; class sca : .. 2010. 5. 27.
시스템제어 일일보고 11번 박동원 C++ #include using namespace std; //템플릿 클래스의 정의 //template //1, 1번과 2번은 동일한 문장 template //2, class TwoArray { public: A arr1[NUM]; B arr2[NUM]; }; int main() { TwoArray Obj1; //템플릿 클래스의 사용 //arr1[NUM] 배열 생성 배열이 첫번째 즉 0번지에 77대입 Obj1.arr1[0] = 77; //arr2[NUM] 배열 생성 배열이 첫번째 즉 0번지에 0.1대입 Obj1.arr2[0] = 0.1f; cout #include using namespace std; template class Array { public: Array() //생성자 { Elems = 0;.. 2010. 5. 26.
시스템제어 5월 25일 일일보고서 10번 문현철 auto_ptr auto_ptr 동적으로 할당된 메모리도 자동으로 해체하는 기능을 가지는 포인터의 래퍼클래스 new 선언후 delete 빼먹는 실수를 방지 #include templateclass auto_ptr 예) auto_ptr rate(new double); *rate=3.1416; namespace 명칭들이 기억되는 영역이며 명칭의 소속공간 일명: 이름을 담는 통 기본형식 namespace 이름 { 여기에 변수,함수 선언 } using namespace std; C++ 표준 라이브러리는 모두 std 네임스페이스에 선언되어 있다 네임 스페이스 작성규칙 *네임스페이스의 이름은 가급적이면 길게 쓰고 또한 중복되지 않는 고유한 이름으로 작성 *네임스페이스는 반드시 전역영역에서 선언해야 한다. *네임스페.. 2010. 5. 25.
[일일보고서] 5월24일(월) - 9번 노현용 [[ C++ ]] [소스1.] 예외 처리중 메모리 누수와 스마트 포인터 ==> 26: 에서 B를 호출한 후 B에서 던진 예외를 메인으로 다시 던짐. 따라서 29: 메모리 해제 안됨. 31: 에서 생성자를 호출하면서 할당된 메모리 주소를 가지고 있다가 A()가 종료되면서 스마트 포인터 객체의 소멸자가 호출되어 메모리가 해제된다. [소스2.] 생성자에서 예외가 발생한 경우 ===> 생성자에선 예외를 발생시키지 말라. 29에서 생성자를 호출하고 12: 에서 메모리 할당했는데 13:에서 생성자 호출완료전에 예외를 던지고 종료되므로 메모리 누수. [소스3.] 연산자 오버로딩 [[ Win32 API ]] [소스1.] InfoDlg 일부 36: 메인창이 생성되면 대화창 값을 초기화하고 46: 마우스 클릭하면 대화상자.. 2010. 5. 25.
아트메가 프로젝트 제가 했던 두더지 게임입니다. 2010. 5. 21.
일일 보고서 (8번 남민호) 1. throw 와 try, catch() - throw : 프로그램이 정상적으로 실행될 수 없는 상황일 때 이 명령으로 예외를 던진다. throw 다음에 던지고자 하는 예외를 적는다. 예외를 던 진다 는 것은 예외가 발생되었다는 것을 알리며 이 예외를 처리하는 catch문으로 점프하도록 한다. throw 명령 아래쪽의 코드들은 모두 무시되며 곧바로 예외 처리 구문으로 이동한다. - try : 예외가 발생할만한 코드 블록을 지정하는데 try 다음의 { } 괄호안에 예외 처리 대상 코드를 작성한다. 이 블록 안에서 예외가 발생 때 throw 명령으로 예외를 던진다. - catch : try 블록 다음에 이어지며 던져진 예외를 받아서 처리한다. 그래서 catch 블록을 예외 핸들러라고 부른다. catch 다.. 2010. 5. 20.
시스템 제어 일일 보고서 - 김진웅 (7번) ★const 멤버 함수 #include using namespace std; class Who { public: void test() const { cout 위와같이 부르게되면 일반함수와 똑같다. 그렇다면 무슨 차이가 있을까? class Who { public: int i; Who() { i = 9; } void test() const { cout 클래스의 내용을 위와같이 만들어보았다. 그러나 아래그림과같이 에러가 뜬다. 이렇게 다른 곳의 변수를 바꾸지 못한다. 그렇다면 인자를 받으면 어떻게 될까? class Who { public: int i; Who() { i = 9; } void test(int iNum) const { cout class Who { public: int i; Who() { i = .. 2010. 5. 19.
[시스템 제어]5월 18일 6번 김 신 호 C++  리눅스 명령어 su - 아이디 $ 로 바꿔줌 su 아이디 현재설정유지 하면서 $로 바꿔줌 ctrl + D $ 상태에서 # 으로 바꿔준다 usr/include pcab 헤더 있는곳 usr/inlcude/linux if_ether.h , ethernet.h 있는곳 1. 개요 Ethernet Protocol Type 이란 이더넷 패킷내의 데이터부분에서 캡슐화된 데이터가 어느 프로토콜에 해당하는지를 나타내고자, 13~14번째 바이트에 이를 표시하는 영역을 말한다. 2. 이더넷 프레임의 통상적인 형식 : IEEE 802.3 또는 DIX 2.0 - Preamble(10101...) 및 SFD(10101011) : 10101......10101011 - D A : Destination Address, S.. 2010. 5. 19.
WinVi 편집기(윈도우에서 사용가능한 vi편집기) 및 몇가지 자주사용하는 명령어. * 처음 vi편집기 하던날 검색해서 조금 연습했던 것들입니다^^ 공유하면 좋을것같아서 올려요~! 1. 2. 보기에는 2번째 VI.EXE가 리눅스 콘솔(터미널)창이랑 비슷하게 생겼는데요. 저는 첫번째가 더 편하더군요..-_-;; 기능은 비슷비슷합니다!! vi편집기 환경파일(~/.vimrc)에 적용시키는 명령어..를 vi 편집기 명령어 모드에서 사용해도 잘먹힙니다. ex) :set number :set showmatch :set autoindent 아참.. 제가 좋아하는 set showmode는 안먹힙니다;; vi사용법 익히기 ppt (예전에 샀던 리눅스책에있는 vi편집기 명령어들이라.. 공부도 할겸...두서없이 그냥 적었습니다. :q라던지 :q!라던지 입력모드(i)등은 안적습니다~!) VI 편집기에서 사용.. 2010. 5. 19.
728x90
반응형