본문 바로가기

{Programing}131

c/c++ 배열, 동적할당 배열 : 같은 자료형의 연관된 변수들을 하나로 묶어서 사용하는 자료구조. ex) int 형 배열 1 2 3 4 5 6 7 8 9 char 형 배열 h e l l o 배열의 선언 및 초기화 변수명 뒤에 대괄호를 쓰고 그 안에 배열의 크기를 작성한다. 초기화는 중괄호에 콤마로 구분하여 작성하고. 추후에 배열 요소에 인덱스로 접근하여 값을 변경할 수 있다. int arr[5] = {1,2,3,4,5}; int arr2[10]; for(int i=0; i>10; ++i) { arr2[i] = i; } 배열의 인덱스 배열을 사용할 때는 인덱스로 접근하는 방법과, 포인터 연산을 이용해 접근하는 방법이 있다. 인덱스란 배열의 각 요소를 가리키는 번호로 배열의 요소수가 n 개라면 인덱스의 범위는 0부터 n-1 까지이다.. 2020. 1. 6.
Design Pattern - Command 요청을 객체의 형태로 캡슐화하여 사용자가 보낸 요청을 나중에 이용할 수 있도록 매서드 이름, 매개변수 등 요청에 필요한 정보를 저장 또는 로깅, 취소할 수 있게 하는 패턴이다. command : 실행될 요청에 대한 인터페이스. execute 메서드를 가상함수로 선언해 최상위 부모클래스로 만듦. Concrete Command : 실제로 실행될 요청 기능을 구현한 클래스. command 클래스를 상속 받아 execute 메서드를 구현. receiver : Concrete Command에서 구현된 기능을 실행하기 위해 사용하는 클래스. invoker : 기능 실행을 요청하는 호출 클래스. client : 어느 시점에 어느 커맨드를 실행할지 결정하는 객체. #include #include #include usi.. 2020. 1. 3.
Design Pattern 프로그램 설계시에 자주 반복되고 나타나는 문제들을 위해 고안된 프로그램 패턴. 3가지의 구조로 구성됨. 문맥 : 문제가 발생하는 상황. 문제 : 해결해야될 제약 사항과 상황, 디자인 이슈들, 인과관계 등. 해결 : 문제를 해결하기위한 설계요소와 요소사이의 관계, 책임, 협력등. 구현법이나 언어에 종속되지않은 템플릿. 생성 패턴 객체 생성에 대한 패턴. 객체 생성, 조합들을 캡슐화해 객체의 생성, 변경에 프로그램 구조가 영향 받지 않도록 유연성을 제공하는 패턴들. ex) 싱글턴(singleton), 프로토 타입(Prototype), 빌더(Builder), 추상 팩토리(Abstract Factory), 팩토리 메서드(Factory Method) 구조 패턴 클래스, 객체를 조합해 더 큰 구조를 만드는 패턴. .. 2020. 1. 3.
c/c++ 구조체 / 클래스 (3) 구조체와 클래스의 차이는 멤버 함수, 접근지정자이다. 접근 지정자 : 멤버 변수, 멤버 함수에 대해 객체 외부에서 직접적으로 접근하지 못하도록 제한할 수 있는 키워드. 외부에서 직접적으로 변경하면 안되는 멤버변수에 대해 외부 접근을 간접적으로나 아예 막는 경우를 생각할 수 있다. public 키워드 : 외부 및 상속관계 접근을 전면 허용하는 키워드. 이 키워드 이하에 작성된 모든 멤버변수, 함수들은 외부및 상속관계에서 접근 가능. protected 키워드 : 외부 접근은 public. 상속을 받은 파생클래스로부터의 접근 가능. private 키워드 : 외부 접근 불가. 파생클래스 에서도 접근 불가. friend 클래스,함수에서 접근 가능. 기본적으로 아무 키워드도 적지 않는다면 private 상태로 간주.. 2020. 1. 3.