디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅆㅇㅆ(124.216) 2025.07.04 00:22:09
조회 170 추천 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/10 - -
AD 저녁 뭐먹지? 오늘의 메뉴 추천! 운영자 25/10/31 - -
2870480 Blockudoku 알고리즘 대결 만들었어 한번만해죠 프갤러(118.235) 07.07 76 0
2870479 자사 서비스 있는 스타트업 어떰? 프갤러(1.233) 07.07 71 0
2870477 재야학계 책보고 아저씨, 제가 역사는 모르지만 [1] 넥도리아(175.196) 07.07 83 0
2870474 근데 슼유동아 궁금한게 한 8개월 넘게 따라다녔는데 안 지겹냐 [3] ㅆㅇㅆ(124.216) 07.07 104 0
2870472 현실부정하다 아카이브 보여주면 빤스런 하는건 똑같노 ㅇㅇ(211.235) 07.07 103 5
2870470 또또 아카이브 내 글 따가며 도배하는 모습이 똑같노 ㅋㅋㅋ ㅆㅇㅆ(124.216) 07.07 87 0
2870469 아니 근데 신기하지 않냐 저 슼유동 VPN까지 써가며 날 증오하는데 [1] ㅆㅇㅆ(124.216) 07.07 81 0
2870467 프갤에서 념글구걸하고 개추주작하고 [5] ㅇㅇ(211.235) 07.07 124 5
2870466 류도그담당=114.202=59.14=ㅆㅇㅆ [1] ㅇㅇ(45.84) 07.07 122 5
2870464 슼 유동 점마 대단한게 49.165행님한테도 개좆털리고 [3] ㅆㅇㅆ(124.216) 07.07 101 0
2870462 준석이 프로그램 비평하셈 [1] ㅇㅇ(211.241) 07.07 139 0
2870460 [그래픽] 여름휴가 언제 많이 가나 발명도둑잡기(118.216) 07.07 78 0
2870458 또 조현병 슼유동 와서 시비거노 [2] ㅆㅇㅆ(124.216) 07.07 83 0
2870456 정치글, 남탓 무한반복 [1] ㅇㅇ(211.235) 07.07 96 4
2870455 코딩 잘하려면 이렇게만 하세요 프갤러(175.115) 07.07 87 0
2870452 일본하면 카타나 수리검 닌자 사무라이 [4] 배구공(119.202) 07.07 98 0
2870450 ㅅㅂ ㅈ됨 [4] ㅇㅇ(180.65) 07.07 136 0
2870449 근데 재매이햄 대통령으로써 능력있게 나름 잘하고 계시노 [6] ㅆㅇㅆ(124.216) 07.07 136 2
2870448 ADHD용 플래너 앱 기획했는데 어떰? ㅇㅇ(118.235) 07.07 116 0
2870447 일본이라고 부르는 것부터가 문제다. 프갤러(223.55) 07.07 79 0
2870446 민생 소비 쿠폰 뭐 사야하나. 데이터 복구하고싶은데 그러면 안될 것 같해 넥도리아(175.196) 07.07 63 0
2870444 짱깨폭염 이시발 뒷통수한방(1.213) 07.07 57 0
2870443 나이가 들수록 아는 것에 대해서 자신이 없어지지 않냐? [1] ㅆㅇㅆ(124.216) 07.07 112 0
2870442 나이가 들수록 점점 아는게 적어지고 화내는 기력조차 없어짐 ㅆㅇㅆ(124.216) 07.07 89 0
2870441 [경축]아스카 주식계좌 2000만원 돌파 [4] 아스카영원히사랑해갤로그로 이동합니다. 07.07 149 2
2870440 우왁굳씨도 논란 후 휴가간다는구나 [3] 헬마스터갤로그로 이동합니다. 07.07 118 0
2870439 AI 자동화는 시장이 될수있을까 프갤러(124.54) 07.07 71 0
2870438 컴퓨터 이름이 레이드 구축할 때마다 바뀌어요. 넥도리아(175.196) 07.07 72 0
2870437 국제적 행사에서 일본해라 하는건 문제가 없음. 근데 문제는 [2] ㅆㅇㅆ(124.216) 07.07 110 1
2870434 나는조현병이야 나는내향적이야 손발이시립디다갤로그로 이동합니다. 07.07 74 0
2870433 중년 취업 잘 되는 자리는 발명도둑잡기(118.235) 07.07 111 0
2870431 일뽕 빼고 일본해라고 하는 게 그렇게 지랄날 일인가? [10] 아스카영원히사랑해갤로그로 이동합니다. 07.07 135 1
2870429 장하준 “이재명 산업정책, 주주자본주의와 양립할 수 없다” [1] 발명도둑잡기(118.235) 07.07 132 0
2870428 하버드 그 새끼가 병신같이 짰다는 이런식인거 맞냐? [4] 프갤러(218.154) 07.07 122 1
2870427 해킹 재능기부좀 해주실분 [5] 프갤러(121.147) 07.07 132 0
2870425 리눅스에서 cli 쓴다고 꺼드럭대는건 [4] 프갤러(124.54) 07.07 155 0
2870424 오늘은 끝내고 프로그래밍 책 다 읽어야하는데 시간이 없다 [1] ㅆㅇㅆ(124.216) 07.07 94 0
2870423 목소리 개역겹네 [2] 응게이(211.234) 07.07 105 0
2870422 지금과 같은 모바일 시장이 최종 진화임? ㅇㅇ(106.241) 07.07 83 0
2870421 3.5년차 개발잔데 퇴사할까요 형님들 [25] 프갤러(211.227) 07.07 432 1
2870418 난 디시만해서 모르겠는데 [1] 배구공(119.202) 07.07 110 0
2870417 비전공자면 눈을 어디까지 낮춰야하나 [3] 프갤러(124.54) 07.07 292 0
2870416 천재네 배구공(119.202) 07.07 80 0
2870415 면접때는 정상이었다가 들어와서 개폐급되는 경우도 있음??. [4] ㅇㅇ(211.235) 07.07 138 0
2870414 면접때는 각잡고 정장차려 입고 왔는데 ㅇㅇ(211.235) 07.07 97 0
2870413 프레임워크 이 2개만 마스터하면 취업 씹어먹음? ㅇㅇ(106.241) 07.07 87 0
2870412 패드립 오가던 원시 솔랭에서도 딜딸하는 새끼들 병신으로 봤는데 [1] ㅇㅇ(106.241) 07.07 88 0
2870411 생산직 친구보니까 현타 ㅈㄴ오노.. [3] 프갤러(106.101) 07.07 228 0
2870410 AI쪽 공부할때 선형회귀나 미적분 아주 빠삭할정도로 공부해야함? [2] 프갤러(211.178) 07.07 146 0
2870409 코딩을 못하는 애들은 문제가 아님. [7] 프갤러(222.114) 07.07 151 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2