디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅆㅇㅆ(124.216) 2025.07.04 00:22:09
조회 176 추천 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/17 - -
AD 겨울가전 SALE! 쿨한 겨울 HOT세일 운영자 25/11/12 - -
2873853 러슬람들아 천재적이고 높은 지능으로 무언가 만들어줘 [1] 뒷통수한방(1.213) 07.23 90 0
2873852 러빠들 솔직히 찍먹쟁이들만 잔뜩 있음. 프갤러(222.114) 07.23 81 0
2873851 근데 기술이 발전했다는데 왜 혁신적이고 특별한 게 없음?? 뒷통수한방(1.213) 07.23 59 0
2873850 나는 뇌의 5%라고한다 [4] 헬마스터갤로그로 이동합니다. 07.23 116 0
2873849 민생 쿠폰으로 다들 뭐 할거에요? 프갤러(222.114) 07.23 78 0
2873847 저능아 특징 [2] 프갤러(222.114) 07.23 101 0
2873846 자바 자바스크립트 파이썬 고도 iso에서 관리 안하는데 뭔 상관? 프갤러(218.154) 07.23 84 0
2873843 러스트는 이미 검증된 언어 프갤러(218.154) 07.23 59 0
2873842 키킼 딱새(211.235) 07.23 69 0
2873840 러스트 안하겠다는 선택은 나쁘지 않아. 프갤러(218.154) 07.23 79 0
2873838 러스트 안하는게 나은건 대부분의 프로그래머가 지능이 낮기 때문 프갤러(218.154) 07.23 59 0
2873835 이거 하나 분명히 해 두자면 난 일하면서 눈팅 정도만 하고 있었다. 프갤러(218.154) 07.23 74 0
2873834 저봐봐 자아를 ai에 의탁해서 러스트 못하는 지능을 합리화하는 모습 프갤러(218.154) 07.23 77 0
2873833 긁히는게 아니고 니가 안쓰러워서그럼 뒷통수한방(1.213) 07.23 76 0
2873832 러스트 강요가 아니라 저지능자들이 알아서 긁힌것 프갤러(218.154) 07.23 75 0
2873831 러뽕은 왜 혼자 러스트하면되는데 좋은거라고 러스트를 강요함?? 뒷통수한방(1.213) 07.23 74 0
2873829 c충 = 스프링충 = php충 = 넥사크로충 동급인 이유 [1] 프갤러(218.154) 07.23 112 0
2873828 냐냐냣!? 냐냥? 딱냥이(1.237) 07.23 53 0
2873825 c cpp 그거 뇌가 이미 굳어버린 저지능 틀 들이 쓰는거잖아 [3] 프갤러(218.154) 07.23 107 2
2873823 러스트 배우고나서야 이것보다 저게 낫다 논할 수 있지 프갤러(218.154) 07.23 73 0
2873821 러스트 못배우는 지능으로 c언어 훌륭해 아직 쓸 수 있어 발광해봐야 프갤러(218.154) 07.23 58 0
2873818 차라리 2000년대가 더 상위20%안에 드는 나라같지 지금은 뭔 뒷통수한방(1.213) 07.23 61 0
2873816 나는 프갤애들이 재밌음 위키세카이(211.235) 07.23 134 0
2873814 보통 다중이 쳐걸렸으면 안 하지 않나? 염치가 씨발 있는 새낀지 ㅆㅇㅆ(124.216) 07.23 67 0
2873811 냥덩이 점마는 계속 따라다니면서 댓글로 지랄염병하네 ㅆㅇㅆ(124.216) 07.23 60 0
2873808 러스트 못배우는 지능 가지고 신포도질 하느라 애쓴다. 프갤러(218.154) 07.23 73 0
2873807 걍 쿠폰에 이재명얼굴 박아서 전국에 우편물로 보내주지 헬마스터갤로그로 이동합니다. 07.23 86 0
2873803 차라리 2000년대가 더 상위20%안에 드는 나라같지 지금은 뭔 뒷통수한방(1.213) 07.23 69 0
2873800 확실히 코딩이 진짜 노력한만큼 보상받는듯 타이밍뒷통수한방(1.213) 07.23 101 0
2873799 재명쿠폰 생각보다 많이안쓸듯 [2] 헬마스터갤로그로 이동합니다. 07.23 85 0
2873798 ㅈ소에서 3년 숨 꾹참고 이직성공 ㅇㅇ(106.102) 07.23 107 0
2873796 제3회 2025 네트워크 AI 해커톤 (~8/15) 프갤러(14.32) 07.23 75 0
2873794 ai는 좇센 법치민주자유국가라고할때부터 수준알아봄 뒷통수한방(1.213) 07.23 56 0
2873790 AI전망을 현재기준으로 판단하는점이 재밌네 [2] 위키세카이(1.237) 07.23 203 0
2873787 부힛 딱짱(211.235) 07.23 49 0
2873786 1년 동안 "쉬었음" 당한 후기 [1] 프갤러(116.43) 07.23 915 0
2873779 차라리 2000년대가 더 상위20%안에 드는 나라같지 지금은 뭔 뒷통수한방(1.213) 07.23 65 0
2873777 션, 결혼 21년 ♥정혜영에 또 사랑 고백 발명도둑잡기갤로그로 이동합니다. 07.23 77 0
2873775 배구공 형님 왜케 호감이지 [4] 루도그담당(211.184) 07.23 101 0
2873774 프로그래밍에 가장 큰 원동력은 새 기술을 배우면 새로운걸 만들 수 있음 ㅆㅇㅆ(124.216) 07.23 90 0
2873772 프로그래밍이라는게 진짜 정신수양에 좋고 안정적임 [3] ㅆㅇㅆ(124.216) 07.23 158 0
2873770 이거 붙여야 된다. [2] 넥도리아(223.38) 07.23 77 0
2873769 코딩은 무조건 하지마셈 좇센에서 유일하게 맞는말은 내가한다 [1] 뒷통수한방(1.213) 07.23 95 0
2873768 코딩은 난 무조건 배우는거 추천함 [4] ㅆㅇㅆ(124.216) 07.23 129 0
2873767 ㄹㅇ 개좇같은 나라여 전세계83억 실험장좇집쓰레기장나라 뒷통수한방(1.213) 07.23 80 0
2873764 코딩은 나같은 비전공도 할 수 있을만큼 쉽잖아 [5] ㅆㅇㅆ(124.216) 07.23 160 0
2873763 코딩 많이 어려운가요? 이제 곧 학원 다니는데.. [2] ㅇㅇ(211.235) 07.23 110 0
2873762 개발 허들 낮아진건 좋은데 병신들이 좆밥취급하는게 문제 [2] 프갤러(218.154) 07.23 117 0
2873756 근데 진짜 좆밥들이랑 무리지을거면 혼자 놀아라 [1] 프갤러(61.79) 07.23 99 0
2873755 GPT로 코드를 전부 다 짠다는건 허상이지만, GPT로 배우기는 쉬워짐 [2] ㅆㅇㅆ(124.216) 07.23 128 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2