본문 바로가기

전체 글1383

[Visual Studio 버전] 컴파일러, _MSC_VER, MFC, 닷넷 (비주얼 C++) [Visual Studio 버전] 컴파일러, _MSC_VER, MFC, 닷넷 Visual Studio에서 위와 같은 _MSC_VER 버전 한 번쯤은 보셨을 겁니다. _MSC_VER은 컴파일러 버전별 매크로 상수값으로 Visual Studio에서 사용하는 컴파일러에게 나를 작업한 컴파일러가 누군지 알려주는 역할도 하게 됩니다. 그리고 Qt 소스나 OCC 같은 3rd party 소스를 빌드하기 위해서도 알아야할 필요가 있는데요.가령, Qt 5.5를 Visual Studio 2015에서 사용하고 싶다면, 2015에 맞는 컴파일러 매크로 상수값이 1900이란 숫자를 알아야 하는 것이죠. 저도 매번 Visual Studio 매크로 상수값을 따로 찾아보다 이젠 한계가 오네요. 그래서 제 블로그에 따로 정리합니다.너.. 2017. 9. 27.
[비주얼 스튜디오 강좌] VisualStudio2012, XP에 프로그램 배포 설정 [비주얼 스튜디오 강좌] VisualStudio2012, XP에 프로그램 배포 설정 이번 비주얼 스튜디오 강좌에선 VisualStudio2012에서 XP에서도 구동되는 응용 프로그램을 만드는 방법입니다. 1. 프로젝트 속성 변경 우선, 프로젝트 속성에서 "플랫폼 도구 집합" - "Visual Studio 2012 - Windows XP (v110_xp)"을 선택합니다. 2. 재배포 패키지 설치 (VC++ 11.0) 그리고, 프로그램이 구동될 PC에는 mfc110u.dll, msvcr110.dll 등의 파일이 필요합니다. 일일이 처리해주기 귀찮으니, 재배포 패키지를 설치해서 한 방에 끝냅니다. (아래 링크 사이트에서 VC++ 11.0을 다운 받은 뒤, XP 컴퓨터에 설치하세요) ▶ Latest Suppor.. 2017. 9. 27.
자바 스레드 Thread 문제점 3가지, 사이클, 자원 낭비, 안전성 문제 자바 스레드 Thread 문제점 3가지, 사이클, 자원 낭비, 안전성 문제 작업마다 자바 스레드를 생성하는 정책은 상용 서비스에서 사용하기에는 무리가 있다. 왜냐하면, 특정 상황에서 엄청나게 많은 대량의 자바 스레드가 생성될 수도 있는데, 이럴 때는 아래와 같은 단점이 발생한다. Java Thread 라이브 사이클 문제 자바 스레드를 생성하고 제거하는 작업에도 자원이 소모된다. Java Thread를 생성하고 제거하는 데 실제로 얼마만큼의 자원을 소모하는지는 운영체제에 따라 다르지만, 어쨌거나 자바 스레드를 생성하는 과정에는 일정량의 시간이 필요하다. 따라서 클라이언트의 요청을 처리할 때 기본적인 딜레이가 생기고, 그동안 JVM과 운영체제는 몇 가지 기초적인 작업을 진행한다. 만약 클라이언트의 요청 내용.. 2017. 9. 26.
[형변환 Qt] QByteArray to Unsigned Char 형변환 [형변환 Qt] QByteArray to Unsigned Char 형변환 형변환은 어떤 언어를 다루건 필연적으로 개발자 앞에 나타난다. 어떤 언어든 (형변환이 일어나는) 퍼포먼스 향상을 위해 기본 라이브러리 보다 고정된 크기의 배열을 사용해야 하는 경우가 있다. Qt도 예외는 아닌지라 컨테이너 중 하나인 QByteArray를 char 배열로 형변환해야 할 상황이 존재한다. QByteArray는 QSerialPort()나 QTcpSocket()을 이용해 패킷을 읽어 들인 후 반환하는 기본 자료형이다. 두 라이브러리 모두 connect()에서 readyRead() 시그널을 통해 패킷을 읽어 들인 후 형변환한다. QByteArray를 unsigned char로 형변환하는 코드는 이런 통신 환경에서 유용하게 사.. 2017. 9. 26.