Microsoft MVP성태의 닷넷 이야기
C# 버전의 정의는 어떻게 구분하나요? [링크 복사], [링크+제목 복사],
조회: 21475
글쓴 사람
guest
홈페이지
첨부 파일
 

안녕 하세요.
선배님의 유익한 글 항상 감사 합니다.

다름이 아니라, .NET Framework는 VisualStudio 프로젝트 속성에서 2.0, 4.0, 4.5 이런식으로 명시적으로 표기되기 때문에 버전별 차이와 정의를 구분하기 쉬웠습니다.
하지만 C#의 경우는 4.0, 6.0 명시적인 표기가 되어 있는지요?
그것이 아니면 프로젝트에서 지정한 .NET Framework 버전에 따라 나뉘는것인지,
그것도 아니라면 VisualStudio 버전에 따라 나뉘는 것인지 정확히 알고 싶습니다.
감사 합니다.








[최초 등록일: ]
[최종 수정일: 9/7/2015]


비밀번호

댓글 작성자
 



2015-09-07 11시27분
[spowner] 제가 틀린 것이라면 성태님이 정정해 주실 것입니다.

말씀하셨던 것 처럼 프로젝트 속성에서 확인 가능한 것은 .NET의 버젼이고 C#의 버젼은 확인하지 못하는 것 같습니다.

위키피디아의 "https://en.wikipedia.org/wiki/C_Sharp_(programming_language)#Versions" 를 참고해주세요.

각 C# 버젼에 따른 .NET Framework 및 지원하는 Visual Studio 버젼을 확인할 수 있습니다. 아마도 Visual Studio 의 Default C# Version이 아마 도표의 Version이 되지 않을까 합니다.
C#의 버젼에 따라 지원하는 .NET Framework도 달라질 것이므로 아마 이 도표에 따를 것으로 보입니다.


[guest]
2015-09-07 03시22분
spowner님이 잘 답변해 주셨군요. ^^

부연하자면.

C#은 최신 버전이 하위 호환성을 가지기 때문에 Visual Studio는 그것의 출시 시기 기준으로 가장 최신 버전의 C# 컴파일러를 기본적으로 사용합니다. 사실 컴파일된 IL 코드가 .NET 1.x와 .NET 2.0에서 차이가 날뿐 .NET 2.0 이후로는 IL 코드의 변화가 없기 때문에 실행하려는 CLR 입장에서는 해당 IL 코드가 어떤 버전의 C# 컴파일러로 컴파일되었는지는 그다지 중요하지 않습니다.

질문하신 의도라면, Visual Studio 버전에 따라 나뉘는 것이 맞습니다.

참고로, 원한다면 C# 컴파일러(csc.exe)를 명령행에서 직접 실행하는 경우 /langversion 옵션을 통해 C# 언어 버전을 명시할 수는 있습니다. (현실적으로 그렇게 할 이유는 없을 것입니다.)
정성태

... 31  32  33  34  35  36  37  [38]  39  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4938김성대1/3/201815716채팅 프로그램관련 질문입니다. [9]파일 다운로드1
4937Ques...1/3/201817873C# CPU 사용량 한계치 늘리는 방법 [2]
4936무개1/3/201815018책 내용 인용하는 것에 관한 질문이있습니다. [1]파일 다운로드1
4935몬난아12/28/201717816IIS 및 ASP.NET 이 서버에서의 동작방식? [2]
4934Ques...12/26/201729138C# 해상도에 따른 자동 사이즈 조절방법이 궁금합니다. [3]
4933Kay12/15/201715276C# VS 버전 에러 질문 드립니다. [1]파일 다운로드1
4932정환나라12/13/201715603vs2013에서 빌드한 com 컨트롤 객체를 닷넷 2.0에서 사용하려 합니다 [4]
4931Arvid12/12/201716286Visual Studio 2012 c# using문 참조 에러 [5]파일 다운로드1
4929김성대12/8/201714466app.config에 관한질문입니다. [1]
4928김성대12/7/201715393SQL Server 설치에러에 대한 질문입니다. [1]파일 다운로드1
4926heyh...12/6/201714452[삭제] ContextSwitchDeadlock????
4925ho12/5/201715018[삭제] WebBrowser로 드롭박스 로그인 페이지 탐색 시 발생한 문제에 대해 질문 올립니다.파일 다운로드2
4924몽중언12/3/201715454C# 디버깅 모드에서만 DB Insert가 되는 현상 질의 [6]
4923고요한11/23/201715615파일 확장자에 연결된 프로그램을 등록하는 방법에 대한 질문입니다. [2]
4922박성훈11/23/201717029시작하세요! C# 7.1 학습 방법 [3]
4921초보개발자11/20/201713804[삭제] 폼 사이즈 질문드립니다.
4920Ques...11/19/201714588IEnumerable 의 "지연된 평가" 에 관하여 질문드립니다. [2]파일 다운로드1
4919mskim11/16/201715276Split()을 이용하여 문자 구분 시 구분문자도 같이 저장하는 방법이 있나요? [2]
4917ho11/16/201715749WPF XAML 트리거 관련해 문의 드립니다. [3]
4918ho11/16/201716372    답변글 [답변]: 예제 프로젝트 첨부합니다. [4]파일 다운로드2
4916필승11/11/201715878기본 웹 브라우저 체크는 어떻게 해야 하나요? [2]
4915필승11/10/201715029WebBrowser 컨트롤 소리 출력 문의 드립니다. [2]
4914Ques...11/10/201715704c# 버튼 이벤트에 관하여 질문드립니다. [2]
4913Arvid11/8/201718551Log4Net 라이브러리를 이용하여 특정 기간이 지났을 때 자동 로그 삭제 기능 구현 질문 드립니다! [2]
4912조범희11/8/201718104C# FTP 다운로드중 에러 발생.. [2]파일 다운로드1
4911필승11/6/201716456WebBrowser 컨트롤 사용법에 대해 궁금합니다. [2]
... 31  32  33  34  35  36  37  [38]  39  40  41  42  43  44  45  ...