2014-02-07 3 views
0

그래서 클래스 학생이 있고 student 클래스의 개체를 가리키는 참조 변수를 만들었습니다. 코드에서 참조 변수의 이름을 가져 오려고합니다. o/p를 원합니다. Harry (내 참조 변수)입니다.이게 가능합니까?참조 변수의 이름 얻기

코드 :

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

     namespace ConsoleApplication1 
     { 
      class Program 
      { 
       static void Main(string[] args) 
       { 
        student harry = new student(); 
        //OUTPUT:harry 
       } 
      } 

      public class student { } 
     } 
+3

필드 정의에 'public'을 추가하십시오. – Grundy

+0

학생의 이름 또는 변수 이름을 코드에 선언 된대로 나타내시겠습니까? –

+2

사이드 노드로서 시간을내어 C#의 규칙을 읽으십시오. 예를 들어, 클래스 이름은 PascalCase로 작성해야합니다. 언어를 배울 때 쉽게 따라 할 수 있으며 모든 언어를 쉽게 이해할 수 있습니다. –

답변

1

없음이 작업을 수행 할 수있는 방법이되지 않습니다. 클래스에 저장된 데이터에만 액세스 할 수 있습니다.

참조 사항을 비교하는 것입니다. 당신의 변수 student 점과 같은 객체에 변수 otherStudent 점을 극복 시험이 경우

if(otherStudent == student) { } 

.

1

를보다 효율적으로 사용하는 필드보다 공공 재산과는 다음과 같이 그것을 :

//Class 

public class Student { public string Name { get; set; }} 

//Instantiate class method 1: 

Student harry = new Student() {Name = "Harry"}; 

//Instantiate class method 2: 

Student harry = new Student(); 
harry.Name="Harry"; 


//get property output: 


Console.WriteLine(harry.Name); 
+0

대신에'property'를 사용하십시오 :-) – Grundy

+0

예. 그것을 목적에했다 :). 나는 더 나은 것 같지만 그가 선택할 수 있습니다. 동적 인 것은 동일합니다 –

+0

필드를 속성으로 변경했습니다 –