44,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
static 에러
using System; namespace ConsoleApp1 { class Program { public delegate void OnInputKey(); public static event OnInputKey InputKey; static void TargetFunc() => Console.WriteLine("input received"); static void Main() { InputKey += TargetFunc; while (true) { Update(); } } public static void Update() { if (Console.KeyAvailable == false) { return; } ConsoleKeyInfo info = Console.ReadKey(); if (info.Key == ConsoleKey.A) { InputKey(); } } } } 제가 예문의 InputManager 클래스 안의 것을 전부 Program 클래스 안으로 몰아 넣어서 기능하다록 코드를 재구성 해봤는데, 여기서 InputKey와 TargetFunc 함수 선언부에 static을 붙이지 않으면 "static이 아닌 필드 메서드 또는 속성 에 개체 참조가 필요합니다" 라는 에러가 뜨더라구요 왜그런건가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Game 클래스내에서 null관련 궁금합니다
Game 클래스 내에서 player와 monster를 끌고 왔을때 private Player player = null; 이라고 하셨었는데 제가 공부를 제대로 못해서 그런건지 ㅠ 정확하게 어떠한 이유에서 null 로 player의 모든 데이터가 Game 클래스로 넘어가는지 확실하게 이해가 되지않았습니다
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
질문이있습니다
s에 |모양이있는 모양은 어떻게 만드나요 7:35초
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
OnClicked clicked = new OnClicked(TestDelegate) 에관해서 질문..
c언어를 조금 배운 상태에서 강의를 듣고있습니다. 참조 형식라고 하여서 clicked 변수에 함수 주소를 받는 포인터로 대입을 해서 생각하고 있는데 new 생성자로 인스턴스를 만들면 새로 메모리를 할당해서 그 주소를 받는다고 이해해왔습니다. 그렇다면 OnClicked clicked 는 TestDelegate의 주소 (함수 원형)을 받는것이 아니라 새로 인스턴스로 생성된 TestDelegate의 복사본의 주소를 받게되는 것인가요? 제대로 질문을 했는지 모르겟군요.. 답변해주시면 감사하겠습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
interface, abstract 차이에 대한 질문
제가 인터페이스와 abstract의 차이가 어려워서 인터넷을 찾아보던 중 다음과 같이 차이를 말해둔 것이 있던데 그 의미를 모르겠습니다. 인터페이스 : 구현이 아닌 서명만 가질 수 있다. abstract : 구현을 제공할 수 있다. 이 차이와 더불어서 "구현" 이라는 말도 정확히 무엇을 뜻하는지 헷갈립니다. 도와주세요..
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Struct 도 내부에 함수 생성이 가능한가요?
엉뚱하고 댕청한 질문일 수도 있는데.. Class 내에 public Knight Clone() 했던것처럼 Struct 내에서도 함수 선언하고 사용가능한가요? 코린이라... 코송합니다 + 끝나고 직접 다시 해보는 과정에서 생각을 정리하는데요 Clone이라는 것을 Program 내 static void clone으로 해서 만들어서 할 수 있는 거지만, 강의 앞서 말한 것처럼 객체 속 하나의 특성으로서 반복적으로 사용하고 이해하기 용이하니 강의 내용대로 하는게 더 좋은 방향인거죠..? knight.Clone();
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Consol.WriteLine(Choice.rock); 출력 결과
Consol.WriteLine(Choice.rock); 출력 결과가 저는 1로 출력될 줄 알았는데 rock으로 출력되네요. 이유가 뭔가요? 검색해도 잘 모르겠습니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
열거형 앞에 캐스팅 하는 거 불편하네요
C에서는 그냥 Choice.sicissors라고 써도 괜찮았던 것 같은데 C#은 일일히 캐스팅해줘야 하는 건가요? 이런 Rule이 장단점이 있는 것 같네요. 설정에서 뭔가 바꿔줄 수 있을 것 같은데...
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
상속과 접근제한자
안녕하세요! 강의 너무 잘듣고 있습니다. 다름이 아니라 상속과 접근제한자에 관하여 궁금한 점이 생겨 아무리 찾아봐도 해결되지않아 질문을 남기게되었습니다. 파생 클래스는 기본 형식보다 높은 액세스 수준을 가질 수 없습니다. internal 클래스 A에서 파생된 public 클래스 B를 선언할 수 없습니다. 이것이 허용된다면 파생 클래스에서 A의 모든 protected 또는 internal 멤버에 액세스할 수 있게 되므로 결과적으로 A가 public이 되는 것과 같아집니다. 출처 : https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/classes-and-structs/access-modifiers 위의 경우 파생 클래스에서 A의 모든 protected 또는 internal 멤버에 액세스할 수 있게 되므로 결과적으로 A가 public이 되는 것과 같아집니다. 라는 이유로 파생클래스에서 더 높은 엑세스 수준을 가질 수 없다고 하는데 해당 부분이 이해가 잘 가지 않습니다. 혹시 예시를 들어 안되는 이유를 알려주실 수 있나요? (public 접근 제한자를 갖는 메서드안에서 private 멤버를 사용할 수 있는 것처럼 public 클래스가 internal 클래스를 상속할 수 있다고 생각이 되어 헛갈립니다.) (public 메서드 안에 private변수에 접근할 수 있다고해서 private변수가 결과적으로 public인것은 아니지 않습니까?)
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
Clone을 통해서 새로운 객체를 만들어낼때
Knight knight2 = knight.Clone(); 을 통해서 새로운객체를 만들어내는것은 이해했습니다. 다만 제가 knight2.hp =0을 안하고 디버깅을 했더니 knight2의 hp, attack 값이 기존 만들어두었던 knight의 값으로 자동으로 설정되더군요 (hp=100, attack=10) Clone 함수에서 knight.hp=hp, knight.attack=attack 이라고 지정하면 Knight클래스 내부의 변수 값을 가져오는걸로 이해했는데 public int hp, public int attack 이라고 선언만했지 초기값을 지정해주지 않았습니다. 초기값을 지정해주지 않았는데도 자동으로 값이 채워지는 이유는 무엇인가요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
sort 알고리즘에 대해서 질문드립니다.
강의에서는 배열이 뒤죽박죽이지만 만약 이미 정렬이 된 배열이라면 swap 부분에서 같은 값을 의미없이 주고받게 되는 것 같습니다. 그리고 본 강의에서도 10이 첫번째로 나왔고, 가장 작기 때문에 스왑을 하는 의미가 없는 것 같았습니다. 혹시 swap을 하기 전에 if (minIndex == i) continue; 를 통해서 바꿀 필요가 없는 경우 스왑을 생략하고 넘어가는 부분을 넣으면 어떤가요? 큰 의미가 없는 것인지 궁금합니다. 그리고 저 부분을 넣어서 실행해보았을 때, 정상적으로 Sort함수가 작동하였지만 혹시라도 틀린 부분이 있을까요? 마지막으로 강사님께서 sort 알고리즘이 여러가지 있다고 하셔서 검색을 해보았는데 이 방법이 선택정렬(Selction Sort)이 맞을까요?
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
int형 변수에 0xFFFFFFFF는 왜 저장이 안되나요?
제목 그대로입니다. 실수로 강의와 다르게 입력했는데 uint 형식을 int 형식으로 변환할 수 없다고 나오네요. 0xFFFFFFFF면 그냥 -1로 저장되어야 하는거 아닌가요?
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
왜 이것은 실행이 안되나요? 두개의 차이점이 무엇인가요
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
함수 선언
단순한 질문인데 main 안에 함수 호출할때 program 앞에 안붙여도되나여?9:21
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
C++ 강의 언제 나오는지 알 수 있을까요?
유익한 강의덕분에 C#과 유니티를 재밌게 공부하고 있습니다. 그래서 다음 강의를 기다리고 있는데... 올해 C++과 언리얼 강의를 올리신다고 들었습니다. 언제쯤이면 볼 수 있을까요? 빨리 새 강의를 보고 싶습니다. 읽어주셔서 감사합니다.
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
접근한정자에 대하여 질문있습니다
안녕하세요. 좋은강의 잘 듣고있습니다. 강의를 듣던 중 궁금한 점이 생겨 질문드립니다. 클래스 멤버에 대한 접근 한정자가 아닌 클래스 자체에 대한 접근한정자는 public, internal 두가지만 존재하나요? 클래스 키워드 앞에 private나 protected를 사용하려고 하면 에러가 발생되네요. 만약 맞다면, 제가 구글링해본결과 다른 프로젝트에서 참조하고싶을 때는 public 같은 프로젝트에서만 참조하고싶다면 internal로 사용하는것이 맞나요?
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
delegate에 관하여 질문있습니다.
안녕하세요 강좌를 듣던 중 궁금한 점이 생겨 질문드리게 되었습니다. 내부적으로 OnClicked clicked = new OnClicked(TestDelegate); 처럼 동작한다는 말씀은 컴파일 과정에서 OnClicked clicked = TestDelegate; 가 OnClicked clicked = new OnClicked(TestDelegate); 로 변한다는 말씀이신가요?
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
event 강의에서
혹시 event 문법이 어떤 식으로 쓰이는지 예시를 좀 알려주실 수 있으신가요? event 문법을 써서 인풋 매니저를 만들고 싶은데 딱히 event의 필요성을 잘 못 느끼겠어서 질문해봅니다.
- 미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
맥에서는 exe를 어떻게 확인할 수 있나요?
맥에서는 terminal에서 exe를 어떻게 돌려야할까요?
- 해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
클래스 형식 변환에서 is 연산자 질문드립니다
공부를 하다가 예문에서 class Mammal{} class Dog : Mammal{} class Cat : Mammal{} 세 개의 클래스를 만들고 Main에서 Mammal mammal = New Dog(); Dog dog; if(mammal is Dog) { dog = (Dog)mammal;} 라는 코드를 봤습니다 여기서 if문 조건이 참이라고 하는데, mammal 이 어째서 Dog 타입인건가요?? mammal 은 Dog 인스턴스를 가리키긴 하지만 Mammal 타입 아닌가요?? 저는 거꾸로 Dog 인스턴스가 Mammal 타입으로(부모클래스로) 형식변환된다고 이해하고 있었습니다. 또한 if문 조건이 참이라고 한다면, mammal 이 Dog 타입이라는 사실이 밝혀졌는데 if문 안에서 (Dog)mammal; 이라는게 필요한건가요??