본문 바로가기

분류 전체보기

(77)
Static -1. static 필드와 static 참조형 필드 클래스나 배열은 동적할당을 한다고 배웠다.즉, 유저가 공간을 빌려달라고 요청하면 그때 그때 임의의 공간이 할당되고, 실행 도중에도 상황에 따라 저장된 위치가 내부적으로 바뀌기도 한다. 동적의 반대의 개념인 정적도 존재한다.정적은 움직이지 않고 계속 유지된다는 뜻 이다. static 키워드를 통해 static 필드static 참조형 필드static 프로퍼티static 함수static 클래스 에 대해 배웠고, 복습용으로 한번 정리를 해보았다. 먼저 static 필드(변수)부터 알아보자  static 필드(변수) using System;namespace ToTest{ class Hunter { int _deathCount; int _healthPoint; int _m..
클래스Class 클래스 하면 객체지향이라 한다. 객체 지향이란자동차를 예로 들면구성요소 : 자동차 , 바퀴 , 엔진 , 기어 , 브레이크 , 핸들, 엔진 속 피스톤 , 나사 이런거 등등등 있으나, 우리가 코딩시 필요한것은 그안의 기능구성기능 : 전진,후진 , 좌회전,우회전, 등등 이다. 프로그램에 필요한 요소와 기능들만 추려서 담는것을 보고 [추상화] 라고 한다."요소" + "기능" 가 합쳐서 만들어진 자료형이 바로 [클래스]이다. 그리고 위 자료형 클래스로 실체화 된 결과물이 "객체" 이다. struct와 class  차이는 간단하게, 값타입이냐, 참조타입이냐 차이가있다.struct는 크기가 작고 간단한 객체를 정의할때 사용. 16byte이내 크기를 권장한다 한다. 클래스는 복잡하게 이것저것 다 넣어서 쓴다.    구..
아오...몸살.. 저번주 내내 아파가지고 공부효율도 떨어지고 상태도 안좋아서 블로그 관리도 하나도 못했슴다... 다들 감기조심하셔요 ㅋㅋ 오늘 밀린 업로드 다했다...
class에 메서드를 만들어서 사용해보기 위 몬스터 클래스를 지우지 말고 추가로 별도의 cs를 새로 만들고 Item이라는 클래스를 따로 제작.필드형으로는 ???형 아이템 이름??형 아이템타입??? 형 가격이어서 Inventory라는 클래스를 새로운 cs 시트에 제작,필드로 아이템 배열을 가지게 함추가적인 필드가 필요하면 생성이 클래스 내에 네가지 메소드 제작.첫번째 메서드명은 CreateInvenBySize에 인자값은 정수형 하나. 넘어온 인자값에 따라 아이템 배열을 할당해주고, 인자값만큼 인벤토리가 만들어졌다고 출력하는 기능 제작.두번째 메서드로는 반환값으로는 bool형, 함수명은 isInvenCreated, 함수 내용은 아이템배열이 0보다 작거나 null일 경우 false, 존재한다면 true반환세번째 함수는 GetItemByIndex, 리..
클래스 생성 실습 새로운 cs파일을 하나 생성 합니다. 그 속에 Car라는 클래스를 만든 후,필드로 문자열 차이름,정수형 자동차넘버,정수형 자동차체력internal class Car{ string carName = "부가티"; int carNumber; public int CarHp { get; set; } public string CarName { get { return carName; } }}새로 cs파일을 생성 후에 Monster라는 클래스를 만든 후,필드로 정수형 공력력,정수형 HP를 가지고 있게 합니다.필드로 위치와 관련된 구조체를 하나 들고 있게 합니다.구조체 설계도 이름은 Vector..
구조체를 이용해서 인벤토리 흉내내기 Weapon 이라는 구조체 설계도를 하나 만든 후, 속성으로는 public 문자열 형 name을 가지게 하세요.Soilder이라는 구조체 설계도를 하나 더 만든 후, 속성으로 Weapon구조체를 담을 수 있는 배열 및 현재 손에 들고 있는 Weapon이 무엇인지 저장할 배열의 인덱스로 사용할 정수형 변수 하나를 작성합니다.메인에 돌아와서 솔져 구조체를 하나 만들어줍니다. 솔져의 무기 목록 배열에 Weapon 구조체를 3개 담을 수 있게 초기화 시켜주시고, 솔져가 가진 무기의 배열에 본인이 희망하는 이름을 담은 무기 3가지를 모두 기입하여 줍니다. 처음엔 1번을 들고 있습니다(인간의 말로)함수를 하나 만들되, 솔져형을 참조형 인자로 받는 void형 함수를 제작할 것입니다. 함수의 이름은 ChangeWeap..
구조체 활용하기 다음 조건에 따라 기능을 제작하세요. 함수를 써도, 메인에서 다 만들어도 됩니다short형x, short형y 두가지를 가진 XYCoord라는 구조체를 선언한다.정수형 Dmg, 실수형 Critical, 문자열형 Name을 가진 구조체 틀을 만들고 구조체 이름은 Weapon으로 선언한다.방금 만들어진 구조체 설계도를 활용하여, Sword와 Katana라는 객체를 만든 후, 본인이 원하는 수치를 각각 속성에 전부 추가한다.Item 이라는 구조체를 만든다. 이 아이템이라는 구조체는 문자열형인 아이템 이름, 정수형인 가격, 열거형인 아이템 타입(방어구, 무기, 소모품)의 속성을 가진다.아이템이 3개 들어가는 인벤토리라는 배열을 만들고, 배열 속 세번째 요소에, 아이템명으로 “악몽의 꽃 견갑”, 가격은 500, 아..
Git 버전관리 ※ Git(Global information Tracker)은 강력한 버전 관리 기능을 제공합니다.  Git이 할 수 있는 다양한 일 들파일 추적 및 관리: 파일 변경 사항 추적, 파일 추가 및 변경 사항 저장지금 당장, 이전 세이브 본과 어떤 차이가 있는지 바로 보임기록 관리: 변경 기록 관리, 변경 사항 비교세이브 파일 간 기록 비교브랜치 관리: 여러 작업을 분리하고, 작업 병합분기점을 두고 나누어서 작업세이브 파일 남겨두고 한쪽 진행다른 쪽 세이브 파일 넘어가서도 작업 진행 가능여러 분기점의 변동 내역을 가지고 합칠 수도 있음협업 및 원격 저장소: 협업, 원격 저장소와 동기화, 변경 내용 공유 및 가져오기원격 저장소에 내용 보내고 받고 가능변경 사항 되돌리기: 실수 수정, 이전 버전으로 돌아가기Re..