반응형

언어 46

지연된 순차적 Task 처리

기본 원리는 컬렉션에 적재한 후 나중에 처리하는 형식으로 진행했다. 이 때 순차적인 Task를 처리하는 경우가 있는데 DeferedStartAll로 구동하면 Task.ContinueWith를 이용하여 차후 작업을 시작하도록 수정할 수 있다. 테스크에 할당할 작업은 Action을 이용해 주입하면 된다. using PatchTool.source.data;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace PatchTool.source{ public class TaskManager { public enum eCategoryT..

언어/C# 2024.11.13

[AWS TransferUtility]The bucket you are attempting to access must be addressed using the specified endpoint

The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.' 위 에러가 뜰 경우 S3버킷의 권역과 동일하게 권역을 설정하여 업로드 혹은 다운로드 시도를 했는지 확인이 필요하다. //RegionEndPoint.USEast1이 권역이다.TransferUtility tu = new TransferUtility(accessKey, secretAccessKey, RegionEndPoint.USEast1); 권역이 서로 일치해야 업로드, 다운로드가 가능하다.

언어/C# 2024.10.31

클래스 템플릿 내에 iterator를 반환할 경우

iterator를 반환하는 함수를 만드는 경우가 있다. generic을 위해 iterator를 구현하면 컴파일이 안되는 경우가 있다.이는 컴파일러가 iterator이 static 필드인지 type인지 알 수 없어 발생하는 문제이다.이를 해결하려면 컴파일러에게 iterator가 type인지 알려주면 되며, 이는 앞에 typename을 붙여주면 해소 된다.template class HI{ std::map m_vector; public: // Not Compile // std::map::iterator GetIter(T key){ return map.find(key); } // OK typename std::map::iterator GetIter(T key){ return map..

언어/C++ 2024.09.05

C++/CLI 배포시 주의 사항

개발당시 컴퓨터에서 잘 동작하다가 다른 컴퓨터로 옮겨서 실행하면 동작 안하는 경우가 있다. 이벤트 뷰어를 살펴보면 닷넷 런타임 에러와 애플리케이션 에러가 번갈아 뜨며, System.IO.FileNotFoundException 로그가 남는다. 해당 로그가 남는 원인은 다양하나 C++/CLI로 만든 DLL이 디버그버전이라 인식 못했을 가능성이 높다. 이에 DLL을 Release버전으로 배포하면 닷넷환경이 깔려있는 어지간한 환경에서 문제 없다.

언어/C# 2024.02.13

std::max()가 std::numeric_limits::max()을 인식 못하게 막을 때..

enum 값의 범위를 파악하기 위해 std::numeric_limits::max()를 사용하고자 했다. 그런데 코드를 짜다보니 std::max()가 std::numeric_limits::max()를 인식 못하게 하는 경우가 발생했다. 에러코드는 아래와 같다 warning C4003: 함수 같은 매크로 호출 'max'에 대해 인수가 부족합니다. error C2589: '(': '::' 오른쪽에 잘못된 토큰이 있습니다. error C2062: 예기치 않은 'unknown-type' 형식입니다. error C2059: 구문 오류: ')' error C2143: 구문 오류: ';'이(가) '{' 앞에 없습니다. 이를 해소하기 위해선... #undef min, #undef max 전처리문 추가 작업이 추가로 필요..

언어/C++ 2023.11.23

미리 컴파일된 헤더를 찾는 동안 예기치 않은 파일의 끝이 나타났습니다.

심각한 오류 C1010 | Microsoft Learn 심각한 오류 C1010자세한 정보: 심각한 오류 C1010learn.microsoft.com 이 오류가 발생하면 새로 추가한 CPP 파일에 대하여 미리 컴파일된 헤더 옵션을 사용하지 않으면 거의 해결된다.편집해야 할 곳은 vcxproj. 프로젝트 파일이다. 메모장으로 열면 쉽게 편집 가능하다.처리 전  NotUsing NotUsing NotUsing NotUsing처리 후 vcproj인 경우 아래와 같다.처리 전  처리 후

언어/C++ 2023.11.21

libCurl 에러 관련

Error Log 1>libcurl.lib(ldap.obj) : error LNK2019: __imp_ldap_initWldap_do 함수에서 참조되는 확인할 수 없는 외부 기호 1>libcurl.lib(ldap.obj) : error LNK2019: __imp_ldap_sslinitWldap_do 함수에서 참조되는 확인할 수 없는 외부 기호 1>libcurl.lib(ldap.obj) : error LNK2019: __imp_ldap_unbind_sldap_do 함수에서 참조되는 확인할 수 없는 외부 기호 1>libcurl.lib(ldap.obj) : error LNK2019: __imp_ldap_set_optionWldap_do 함수에서 참조되는 확인할 수 없는 외부 기호 1>libcurl.lib(ld..

언어/C++ 2023.11.20

Bit Field

Bit-field - cppreference.com Bit-field - cppreference.com Declares a class data member with explicit size, in bits. Adjacent bit-field members may (or may not) be packed to share and straddle the individual bytes. A bit-field declaration is a class data member declaration which uses the following declarator: iden en.cppreference.com 해당 항목의 설명은 명시적 크기의 비트로 클래스 멤버 데이터를 선언한다는 것이다. #include struct S..

언어/C++ 2023.05.09
반응형
LIST