C++/CLI에서의 연산자 오버로딩 패턴
C++/CLI 템플릿 클래스에서 연산자 오버로딩 문제를 해결하는 간단한 방법을 소개할까 합니다. 아래 코드는 원문에서 베껴온 코드이고, 언급했다시피 결과는 이상하게도 **성공, 실패** 입니다. // LibraryA.cpp : library file. #include "stdafx.h" #include…
C++/CLI 템플릿 클래스에서 연산자 오버로딩 문제를 해결하는 간단한 방법을 소개할까 합니다. 아래 코드는 원문에서 베껴온 코드이고, 언급했다시피 결과는 이상하게도 **성공, 실패** 입니다. // LibraryA.cpp : library file. #include "stdafx.h" #include…
아무래도 컴파일러 버그인 듯한 문제를 발견했는데, 단순히 내 자신이 무지한 탓인가 싶어 블로그에 올려봅니다. 소스 코드는 Visual Studio 2008로 작성해서 올려놨습니다. // LibraryA.cpp : library file. #include "stdafx.h" #include <iostream>…
로컬 SVN 저장소가 맛이 갔다. Update를 하려면 우선 CleanUp부터 하라고 하고, CleanUp부터 하려면 Lock부터 풀라고 한다. Lock을 풀려니 무슨 이유에선지 안 되더라. 이런 경우를 처음 당하는 게 아니라서 이전처럼 대처했다.…
#include "stdafx.h" using namespace System; value struct Point { public: int x, y; Point() { x = 0; y = 0; } }; Problem of struct default constructor in vc++2005…
채팅 스크립트를 짜다가 스크립트 엔진에서 엄청난 버그를 발견했다. 꼼수를 써서 고치긴 했는데, 마지막 순간까지도 제대로 된 해결책인지 확신이 안 서서 마음을 졸였다. CLR 환경(C#, C++/CLI 등)에는 Thread Local Storage가 몇…
사내에서 C++/CLI 프로그래밍을 함께 하게 될 동료 개발자들을 위해 정리해본다. 이 글은 꾸준히 업데이트될 예정이고, 그 중에서도 제목만 달린 항목부터 추가될 것이다. 단, 함께 일하는 사람들을 위한 문서이므로 외부 사람들이…
C++/CLI 코드를 작성하다가 괴상한, 아니 능력이 모자라서 이해 못하는 현상을 발견해서 이 블로그 구독자들의 도움을 받아볼까 합니다. 우선 다음 코드를 봐주세요. inline MyString marshal_as(System::String^ const & _from_obj) { if(_from_obj !=…
Beauty of any fine art comes not only from creativity but also from discipline. So it is with programming. C++ is a large language, and there is ample room to…
int -> string 변환이 필요한 경우에는 stringstream을 쓰는 것이 '간단하'다. 반대의 변환이 필요한 경우에는 stringstream을 써 봐야 코드가 간단해 지지 않는다. 두 가지 경우 모두, C API를 쓰는 것에 비해서는…
플러그인 구조라 함은 결국 기능을 동적으로 적재하고 해제함으로써, 소프트웨어의 기능 확장성을 확보하겠다는 뜻이다. 닷넷에선 어셈블리 단위의 동적 적재는 허용하지만, 동적 해제는 지원하지 않는다. 이 문제는 응용프로그램 도메인을 통해 해결해야 하는데,…