반응형
#define VC2017 //기호를 정의
//#undef VC2017 //기호 정의를 취소
#define TEST
using System;
namespace ConsoleApp9
{
class Program
{
static void Main(string[] args)
{
#if (VC2017)
{
Console.WriteLine("Visual Studio 2017");
//output : Visual Studio 2017
}
#endif
#if (DEBUG)
{
Console.WriteLine("DEBUG MODE");
//output : DEBUG MODE
}
#else
{
Console.WriteLine("RELEASE MODE");
}
#endif
#if (!TEST)
{
Console.WriteLine("!TEST");
}
#elif (TEST)
{
Console.WriteLine("TEST");
//output : TEST
}
#else
{
Console.WriteLine("else");
}
#endif
{
Console.WriteLine("endif");
//output : endif
}
Console.ReadLine();
}
}
}
output
Visual Studio 2017
DEBUG MODE
TEST
endif
유의사항
맨 윗줄에 써야 적용
디버그 상수값 정의위치
Properties - 빌드 - 일반 - DEBUG 상수 정의
값선언이 필요한 경우는 상수(Constants) 클래스 사용
using System;
using System.Globalization;
namespace ConsoleApp9
{
class Program
{
static class define
{
public const string sProgramName = "define" ;
public const string sKorean = "ko-KR" ;
}
static void Main(string[] args)
{
Console.WriteLine("Program name : " + define.sProgramName);
//output : Program name : define
string sCurrentCulture = CultureInfo.CurrentCulture.Name;
if(define.sKorean == sCurrentCulture)
{
Console.WriteLine("CurrentCulture : Korean");
//output : CureentCulture : Korean
}
Console.ReadLine();
}
}
}
반응형
'C#' 카테고리의 다른 글
C# 구조체 형식 및 구조체 저장하기(Serializable) (0) | 2021.06.28 |
---|---|
윈도우 11 업그레이드 가능여부 확인 방법! (0) | 2021.06.25 |
C# Random 클래스 (feat 중복제거) (0) | 2021.06.24 |
C# 인터넷 또는 제한 영역에 있거나 파일에 웹 표시가 있으므로 처리할 수 없습니다. (0) | 2021.06.23 |
C# 절대값 Math.Abs 메서드 (feat float) (0) | 2021.06.22 |