2011-02-04 4 views
0

저는 C#에 다소 익숙하며 작고 단순하며 투명한 프로그램에 속하며 대학 프로젝트의 일부입니다. 코드 :(사소한?) C# 네임 스페이스/클래스 계층 문제

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

namespace Hemtenta_problem_1 
{ 
    public class Basklass 
    { 
     public virtual void SkrivTrams() 
     { 
      Console.WriteLine("Hej Hopp"); 
     } 
    } 
    public class Avledd_klass : Basklass 
    { 
        public override void SkrivTrams() 
     { 
      Console.WriteLine("Hej Hå"); 
     } 
    } 
    public class Avledd_klass_till : Avledd_klass 
    { 
     public new virtual void SkrivTrams() 
     { 
      Console.WriteLine("Tjo Hej"); 
     } 
    } 
    public class Ytterligare_avledd_klass : Avledd_klass 
    { 

    }_ //row which gives compiler message 

    class Program 
    { 
     static void Main(string[] args) 
     { 
     } 
    } 
} 

컴파일러의 메시지 주석이있는 행과 관련, 나는,

직접 같은 필드와 구성원이나 방법 이제

를 포함 할 수없는 네임 스페이스입니다 어떤 분야 나 방법도 "열린 마음"에 놓일 수 없다는 것을 완벽하게 잘 알고 있습니다. 그것은 수업의 일부이고, 수업의 일부가되어야합니다. 그러나 그것은 내가 코딩하는 방법이나 방법이 아니라 그 자체가 클래스입니다. 위의 다른 클래스 중 위의 클래스 중 어느 것도이 문제를 제공하지 않았습니다. 그것은 내가 마지막이자 아직 공허없는 반을 쓴 때부터 시작되었습니다.

Visual Studio의 컴파일러가 올바르게 작동합니까? 아니면 내가 보지 않을 40 홀수 라인에 무엇입니까? 도움이 될 수있는 의견에 매우 감사드립니다.

+1

오류가있는 행의 밑줄은 무엇입니까? –

+1

정확한 코드를 사용 해본 결과 나에게 도움이되었습니다. (바 Ytterligare_avledd_klass 클래스의 끝에 밑줄) 편집 : YEah는 밑줄 문제입니다! – anothershrubery

+0

코드에 일반적으로 너무 많은 밑줄이 있습니다. [.NET Framework의 명명 지침] (http://msdn.microsoft.com/en-us/library/4xhs4564.aspx)에서는 밑줄을 사용하는 대신 파스칼 케이싱 클래스 및 메서드 이름을 사용하는 것이 좋습니다. 네이밍 스타일을 변경하면 그 찌그러진 밑줄을 막을 수 있습니다. –

답변

7

오류 코드를 입력 한 행의 } 폐점 후 _이 있습니다. 그것을 제거해야합니다.

+0

물론 - 이제는 그 잘못이 저와 함께 있고 줄 밑줄의 오타가 있음을 알았습니다. IntelliSense는 밑줄 위에 물결표를 넣었으므로 놓쳤습니다. 정말 고맙습니다! – Santillana

+0

도움을 주셔서 감사합니다. 대답으로 표시하십시오. –

+0

나는 "가까운 시가"라고 말하고 싶다. @Santillana –