디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

차트맨아 C++ 책좀 읽어라 왜곡하지말고 그냥

ㅆㅇㅆ(124.216) 2025.07.04 00:22:09
조회 168 추천 1 댓글 10
														



3db2d977abd828a14e81d2b628f1766e9dab11e6


24b0d121e09c28a8699fe8b115ef046f5d4b919eab



24b0d121e09c28a8699fe8b115ef046b6a6e933e




이 내용 가져오면서 ++98 스타일 긍정했다하는데


그게 아님.


애초에 RAII <- CPP 초창기때부터 함께했지만 대부분 안 지켰음


그래서 그걸 지키게 하기위해서 이동 시맨틱스 도입한게 C++11임


이펙티브 모던 C++이라는 이름답게 '모던 C++'를 가르키는 것.


저 내용 뭔지 설명해줌




24b0d121e09c28a8699fe8b115ef046a7e68e2cf


In C++98, exception specifications were rather temperamental beasts. You had to summarize the exception types a function might emit, so if the function’s implemen‐ tation was modified, the exception specification might require revision, too. Chang‐ ing an exception specification could break client code, because callers might be dependent on the original exception specification. Compilers typically offered no help in maintaining consistency among function implementations, exception specifi‐ cations, and client code. Most programmers ultimately decided that C++98 exception specifications weren’t worth the trouble


->예외명세는 까다롭다. 그리고 클라이언트 코드 깨질 수 있다. 호출자가 예외명세에 의존하고 있었을 가능성이 높아서,

클라이언트 코드 간의 일관성을 전혀 자동으로 보장해주지 않았다


결국 대부분의 프로그래머는 C++98 예외 명세는 사용할 가치 없다고 판단함




24b0d121e09c28a8699fe8b115ef0468e1acecb2


During work on C++11, a consensus emerged that the truly meaningful information about a function’s exception-emitting behavior was whether it had any. Black or white, either a function might emit an exception or it guaranteed that it wouldn’t. This maybe-or-never dichotomy forms the basis of C++11’s exception specifications, which essentially replace C++98’s. (C++98-style exception specifications remain valid, but they’re deprecated.) In C++11, unconditional noexcept is for functions that guarantee they won’t emit exceptions.


->C++11 에서는 상황이 달랐음. 

흑백으로 나눠서 이진 구분을 하게함


즉 C++98 스타일의 예외명세는 문법적으로 유효하나, 더이상 권장되지 않는다.




24b0d121e09c28a8699fe8b115ef046c64f92a4c98



noexcept는 예외를 던지지 않는다는걸 선언하는 방시깅고


c++11 에서는 noexcept 함수가 절대 예외를 발생시키지 않음을 보장함


어떤 함수에서 noexcept를 선언할지 여부가 '인터페이스' 설계의 핵심이라는 걸 보여주는 내용임


그래서 C++98식으로 하라는게 아니라


가능한한 noexcept를 선언해서 모던 C++ 식으로 하되


어쩔 수 없는 상황에서 예외 던지고, C++98식으로 안전 보장하라는거임




24b0d121e09c28a8699fe8b115ef046f5d499a99a1


C++11에서는 copy대신 move를 쓰는게 자연스러운 최적화다(이또한 내가 한 말)


기존 C++98 코드들은 push_back이 강한 예외 안전성을 보장한다나는 가정하에 작성되었지만,


C+11 구현체들은 복사 move로 교체하려면 해당 move 연산이 절대 예외를 던지지 않는다는 사실을 알아야한다라고 설명함



따라서 이전 내 설명대로


C++11 이상으로 '모던'하게 짜라는거지 C++98 내용 따르라는 말이 아니다,



추천 비추천

1

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 해외에서 겪는 불합리한 대우에 대응 잘 할 것 같은 스타는? 운영자 25/11/03 - -
AD 저녁 뭐먹지? 오늘의 메뉴 추천! 운영자 25/10/31 - -
2870787 내 시급이 이런 식으로 정해진다니... 황당하실 겁니다 발명도둑잡기(211.246) 07.10 76 0
2870786 尹 재수감되는 3.7평 독방 발명도둑잡기(211.246) 07.10 100 0
2870785 정권교체되고 냥덩이 [1] 발명도둑잡기(211.246) 07.10 105 0
2870784 노트북 시장 근황 [1] 발명도둑잡기(211.246) 07.10 174 0
2870783 축하합니다 발명도둑잡기(211.246) 07.10 65 0
2870782 당뇨가 오는 과정 발명도둑잡기(211.246) 07.10 97 0
2870780 이렇게 보니 별로 더러워보이지 않네..ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 07.10 83 0
2870779 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 07.10 69 0
2870778 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 07.10 74 0
2870777 dos에서 x윈도우 Xappeal 발명도둑잡기(211.246) 07.10 64 0
2870775 요즘 존나 후회됨 [1] ㅇㅇ(211.234) 07.10 1009 0
2870773 ❤✨☀⭐나님 시작합니당⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 07.10 71 0
2870769 요즘 인터넷에서 자주 보이는 간첩 특징 정리.txt [1] 야옹아저씨갤로그로 이동합니다. 07.10 148 0
2870764 Skt 미친것들 전화기가 꺼져있어 넥도리아(175.196) 07.10 102 0
2870763 재구축 인터넷 망 넥도리아(175.196) 07.10 84 0
2870762 나 폰 2개 폰 액정분해하다가 깨졌어요. 넥도리아(175.196) 07.10 103 0
2870760 1인개발자할건데 뭐배우면 좋나요? [4] 프갤러(1.238) 07.10 167 0
2870758 윤석열 구속 확정 [2] 야옹아저씨갤로그로 이동합니다. 07.10 127 1
2870756 내일 휴가인 아스카 [2] 아스카영원히사랑해갤로그로 이동합니다. 07.10 120 0
2870750 경찰 왜 욕하는거임 뒷통수한방(1.213) 07.10 94 1
2870749 C# bool형 대소문자 [3] ㅇㅇ갤로그로 이동합니다. 07.09 146 0
2870748 ㅆㅇㅆ [1] 발명도둑잡기(39.7) 07.09 112 0
2870747 생일 끝나기 24분전 [2] ㅆㅇㅆ(124.216) 07.09 111 0
2870746 일본거주 10년차 외노자 월급, 상여 프로외노자갤로그로 이동합니다. 07.09 175 1
2870745 패션 개발자인 나야 ㅇㅂㅇ [1] 익명의따당이갤로그로 이동합니다. 07.09 148 0
2870744 도스 GUI 모음 발명도둑잡기(39.7) 07.09 98 0
2870743 문내립니다 [5] 개멍청한유라갤로그로 이동합니다. 07.09 120 0
2870742 카카오톡에 있는 이상한 기능 [2] 발명도둑잡기(39.7) 07.09 127 0
2870741 ai성능 날이갈수록 개박살나는거같은데 공기역학갤로그로 이동합니다. 07.09 141 0
2870740 오늘 쓰레기버리는데 갑자기 공무원들이 잡아세우더라 뒷통수한방(1.213) 07.09 82 0
2870739 저거 슼유동 진짜 냥덩이 인갑네 말투 비슷해서 그런갑다했었는데 [2] ㅆㅇㅆ(124.216) 07.09 104 0
2870738 고용24에다가 구직 신청 넣었다 [2] ㅇㅇ(118.235) 07.09 163 0
2870737 다시 프갤 들어옴 [4] ㅇㅇ(118.235) 07.09 121 0
2870733 GPT 임마 이거 내 프로젝트는 완성못하고 남의 외주만 완성한다고 ㅆㅇㅆ(124.216) 07.09 102 0
2870732 아래 문구 gpt에게 붙여넣은 결과 [2] ㅆㅇㅆ(124.216) 07.09 146 0
2870731 gpt에 이거 복붙해봐 신세계임 [1] 프갤러(210.99) 07.09 139 0
2870730 지금 프로그래밍 언어 배우는거 어떻게 생각해? [2] 프갤러(119.192) 07.09 122 0
2870728 전문학교 나온사람잇음?? [2] 프갤러(211.235) 07.09 99 0
2870725 프갤 ㅈ망했규나 [5] 조루디(110.35) 07.09 152 0
2870724 더워 조루디(110.35) 07.09 81 0
2870722 자주국방 시작하는 이재명 [12] 야옹아저씨갤로그로 이동합니다. 07.09 790 7
2870720 외케 취업 어려움 [2] 무관갤로그로 이동합니다. 07.09 300 2
2870719 Nginx Proxy Manager 질문이요 ㅠ [3] 프갤러(1.236) 07.09 279 0
2870717 코드주면 알아서 포트폴리오 짜주는 그런거 없나 ㅇㅇ(223.38) 07.09 78 0
2870715 모든소스 짜는걸 gpt한테 넘긴다.. [1] ㅇㅇ(175.197) 07.09 94 0
2870714 멍퀴벌레님 깝치지 마세양❤+ 나님 삼대 5백 출신이에양⭐+ [2] ♥냥덩이♥갤로그로 이동합니다. 07.09 101 0
2870713 민생지원쿠폰 스위치 1,2 또는 데이터복구 업체에 하드 스마트폰 맡기기 넥도리아(121.139) 07.09 74 0
2870712 ❤✨☀⭐나님 시작합니당⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 07.09 75 0
2870711 아 ㄹㅇ 개피곤하넹 [1] ♥냥덩이♥갤로그로 이동합니다. 07.09 96 0
2870710 초Ai 스카이넷 냥덩❤ [1] ♥냥덩이♥갤로그로 이동합니다. 07.09 97 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2