오류 CS0246 'Knight' 형식 또는 네임스페이스 이름을 찾을 수 없습니다.
784
작성한 질문수 7
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharp
{
enum Playertype
{
None=0,
Knight=1,
Archer=2,
Mage=3
}
class Player:Creature
{
protected Playertype type = Playertype.None;
protected int hp = 0;
protected int attack = 0;
protected Player(Playertype type):base(CreatureType.Player)
{
this.type = type;
}
public void SetInfo(int hp, int attack)
{
this.hp = hp;
this.attack = attack;
}
public Playertype GetPlayertype() { return type; }
public int GetHp() { return hp; }
public int GetAttack() { return attack; }
public bool IsDead() { return hp <= 0; }
public void OnDamaged(int damage)
{
hp -= damage;
if (hp <= 0)
{ hp = 0; }
}
class Knight : Player
{
public Knight() : base(Playertype.Knight)
{
SetInfo(100, 10);
}
}
class Archer : Player
{
public Archer() : base(Playertype.Archer)
{
SetInfo(70, 15);
}
}
class Mage : Player
{
public Mage() : base(Playertype.Mage)
{
SetInfo(60, 20);
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharp
{
enum Mode
{
None,
Lobby,
Gild,
Biliage
}
;
internal class Game
{
Player player = null;
Monster monster = null;
Mode mode = Mode.Lobby;
public void Process()
{
switch(mode)
{
case Mode.Lobby:
ProcessLobby();
break;
}
}
public void ProcessLobby()
{
while (true)
{
Console.WriteLine("직업을 선택하세요");
Console.WriteLine("[1]검사");
Console.WriteLine("[2]궁");
Console.WriteLine("[3]마법사");
string input = Console.ReadLine();
switch (input)
{
case "1":
player = new Knight();
break;
}
}
}
}
}
이렇게 있을 때 두번째 파일의 player = new Knight();
에서 심각도 오류 CS0246 'Knight' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요.
라는 오류가 뜹니다 아무리 찾아봐도 뭐가 문젠지 모르겠어요ㅠㅠ
처음엔 오류의 원인을 찾는게 원래 이렇게 어려운건가요?
찾아볼 때 그 과정에서도 모르는 말이 너무 많아서 하나하나 찾아가다보면 이렇게 오래 걸릴 단계가 아닌 것 같은데 시간이 많이 지체되고 결국 잘못된 방향으로 찾아서 해결책도 찾지 못할 때가 많아요.
처음 공부할 때는 너무 막히면 질문하고 일단 넘어가고 나중에 돌아오는게 맞을까요? 아니면 끝까지 문제를 파악하고 넘어가야할까요?
답변 2
0

class Knight의 위치가 잘못 되었습니다.
밖에다가 만들어야 하는데 class Player 내부에다 만들어서 발생한 문제입니다.
요렇게 밖에다 해주셔야 합니다.
0
처음에 문법 헤딩은 정말 끔찍하고
별 것도 아닌 것 가지고 1시간씩 낭비하고 그런 일이 비일비재합니다.
그런 무한 헤딩과 경험이 쌓이다 보면,
나중에는 에러 메시지만 보고도 원인이 유추되는 내공이 쌓입니다.
위 내용이 보기가 어려워서 잘 모르겠는데
정말 해결이 안되면 전체 솔루션 압축해서 rookiss@naver.com 로 보내주세요.
Generic에 대한 질문 있습니다.
0
97
2
2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?
0
203
2
다형성 캐시 문제
0
113
3
.
0
71
1
프로퍼티 강의 질문 있습니다.
0
79
1
이후 커리 질문
0
86
1
static
0
91
2
강의에는 새로운 클래스 파일을 생성하면...
0
72
1
생성자의 이름 선언
0
65
1
9:03 Divide(10 , 3) 부분 질문입니다
0
88
1
깃허브 관련 질문 있습니다.
0
239
1
비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문
0
249
1
C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!
0
306
2
Activator 질문있습니다
0
332
1
이넘 타임 선언 질문
0
346
1
Sort 오름차순, 내림차순
0
323
1
질문 있습니다.
0
249
1
팩토리얼 문제
0
270
1
Sort함수 질문있습니다.
0
265
1
다형성 함수 질문 있습니다.
0
221
1
질문이 있습니다.
0
228
1
섹션2 연습문제 질문입니다.
0
214
1
안녕하세요~서버에 대해 질문이 있습니다.
1
283
1
텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ
0
395
1





