인터페이스
·
Language/C#
인터페이스  구현을 강제한다.다중 상속 가능,코드는 결합도가 낮아야 한다.결합도가 높다는 것은 클래스 간 의존도가 높다는 것 → 유연성이 떨어지게 된다. 구체적 구현 클래스가 아닌 작은 단위의 여러 인터페이스를 사용하자.
[C#] delegate
·
Language/C#
갈아끼운다 , 반환형 매개변수기본 구조delegate 반환형 이름(매개변수) . . . 접근제한자는 굳이 필요 없음선delegate void SpawnDelegateFunc();언을 하고 쓴다.delegate void SpawnDelegateFunc(); // 1. 델리게이트 선언void Start(){SpawnDelegateFunc spawnAaction; //2 .변수 만들기 spawnAction = SpawnPlayer_Aroom; //4. 델리게이트 변수에 함수 저장InitStageData();spanwAction(); // 5.델리게이트 실행SpawnMonster()}void SpawnPlayer_ARoom(){} //3. 함수만들기 사용할 함수 만들기 형식이 똑같아야함void SpawnPla..
[BOJ] 2178. 미로탐색 - C++
·
Language/C++
#include using namespace std;int dx[4] = { 0,1,0,-1 };int dy[4] = { 1,0,-1,0 };string board[102];int dist[102][102];int main(){ int n, m; cin >> n >> m; for (int i = 0; i > board[i]; } queue> Q; Q.push({ 0,0 }); for (int i = 0; i cur = Q.front(); Q.pop(); for (int dir = 0; dir = n || ny = m) continue; if (dist[nx][ny] >= 0 || board[nx][ny] != '1') continue; dist[nx][ny] = dist[cur.first][c..
[C++] precision(), cout<<fixed
·
Language/C++
#include using namespace std;int main() { double a = 1.234567; cout.precision(5); cout  precision(지정 자릿수) 만 썼을 때는 전체 자릿수가 5자리만 출력 cout소수점 아래의 자릿수부터 지정 자릿수만큼 출력한다.
[C#] TextRPG
·
Language/C#
using System;using System.Collections;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using System.Text;using System.Threading.Tasks;namespace TeamProejct_Dungeon{ public enum ItemType { Armour, Weapon, Consumable } public class IItem { public virtual string name { get; set; } public virtual double buyPrice { get; set;..
[C#] TextRPG 휴식
·
Language/C#
public void Rest() // 휴식하기 { Console.WriteLine($"현재 체력은{GameManager.player.hp} 입니다."); Console.WriteLine($"현재 마나는{GameManager.player.mp} 입니다."); GameManager.player.hp += GameManager.player.maxHp / 2; // 플레이어 최대체력 50퍼센트 체력 회복 GameManager.player.mp += (int)Math.Round(GameManager.player.maxMp * 0.7); // 플레이어 마나 반올림 if (GameManager.player.hp > GameManager.player.maxHp) ..
[C++] unique()
·
Language/C++
## 사용법 마지막에 중복 제거 후 새로운 끝을 반환.unique(중복제거 시작점, 중복제거 끝 점)함수로만 중복 제거는 불가하고중복제거 후 뒤에 쓰레기 값이 벡터에 남아있기 때문에v.erase(unique(v.begin(), v.end()),v.end());v.erase()를 같이 사용하는 것이 좋다.
[C++] sort() 함수
·
Language/C++
# 사용법## 기본 sort()// 사용법// sort(정렬 시작할 부분, 정렬 마칠 부분 );#include #include #include using namespace std;int main() { vector v; int num; string str; int N; cin >> N; for (int i = 0; i > num; v.push_back(num); } sort(v.begin(), v.end()); // sort for (int i = 0; i  #include 헤더파일을 포함해야 sort 함수를 사용할 수 있다.인자값은 sort(정렬 시작할 부분, 정렬 끝날 부분)이고 배열의 경우, sort(arr, arr+10) 을 해야 인덱스 9까지 정렬이 가능하다.즉,  begin 이렇게 ..
[C#] TextRPG 상점 구현
·
Language/C#
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace TeamProejct_Dungeon{ public class Shop { //List> ShopList; //------갑옷류-------- //1. 2. 3.for(int i ~~~~) //아머리스트[(int)ItemType.Armour][i] //------무기류-------- //무기템리스트 //----소모품--- //7.8.9.소모품 //----서비스류----- ..
[C#] 얕은 복사
·
Language/C#
namespace Copy{ public class Copy { public string name; public int a; public Copy(string name, int a) { this.name = name; this.a = a; } } internal class Program { static void Main(string[] args) { Copy copy1 = new Copy("얕은복사", 3); Copy copy2 = copy1; copy2.name =..