본문 바로가기
programing/C++

코드를 잘 짰는데 이상한 값이 나오는 경우

by RedWiz 2023. 3. 24.

1. pragma pack()

 - 의심 없이 업체API 만 믿고 작업하고 보니 값을 잘 넣어도 이상하게 떠서 확인 해보니

  값을 넣을 때하고 다른 곳에서 읽을 때의 변수의 주소가 달라지는 경우가 생김

 - 확인 해보니 pragma pack 설정 해놓고 다시 안돌려 놓으니까

  헤더 읽는 곳마다 같은 클래스라도 다른 간격, 크기로 계산 되어 예상과는 다른 결과를 만들었다.

 - 프로토콜 땜 pragma pack 설정 한다음에는 항상 pragma pack()으로 원상 복구를...

 

2. 싱글톤 생성자에서 초기화와 쓰레드

 - 예전에 클래스 생성자가 있는데 초기화 함수를 따로 왜 둘까 했었는데

 - 싱글톤 객체를 초기화 하면서 쓰레드 돌리고, 다시 쓰레드에서 해당 클래스 객체를 호출 하다보니 꼬였다.

 - 객체 생성자를 거쳐 객체 생성을 끝낸 다음에서야 싱글톤 객체를 정상적으로 가져 오는 것으로 해결...

'programing > C++' 카테고리의 다른 글

websocket in cpp(MSVC)  (0) 2019.11.06
mutable 키워드  (0) 2017.07.06
IOCP를 쓰는데 완료 쪽으로 안넘어 올 경우 확인 해 볼것  (0) 2017.06.22
쉼표 연산자  (0) 2017.05.24
R6025 - pure virtual function call  (0) 2017.04.25