디시인사이드 갤러리

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

갤러리 본문 영역

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

ㅆㅇㅆ(124.216) 2025.07.04 00:22:09
조회 101 추천 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/07/07 - -
AD 휴대폰 바꿀까? 특가 구매 찬스! 운영자 25/07/02 - -
공지 프로그래밍 갤러리 이용 안내 [88] 운영자 20.09.28 45245 65
2870353 초천재 오타쿠 개발자가 되는 길은 험난하다 아스카영원히사랑해갤로그로 이동합니다. 12:00 5 0
2870350 우간다 같은나라에서 안태어난게 ㄹㅇ 복받은 나라인듯 뒷통수한방(141.0) 11:45 8 0
2870349 풀스택 국비 듣는 중인데 좆소라도 갈 수 있을까?? 프갤러(211.36) 11:40 6 0
2870347 봄 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 11:10 13 0
2870345 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 11:03 11 0
2870344 하루 한 번 헤르미온느 찬양 헤르 미온느갤로그로 이동합니다. 11:02 10 0
2870343 취업 푸념. 프갤러(59.16) 10:20 23 0
2870342 냥덩이의 고향은 ‘지구’ 입니당⭐+ [2/1] ♥냥덩이♥갤로그로 이동합니다. 10:16 25 0
2870340 메타퀘스트 앱 개발하면서 토스트기능 구현해본사람 있어? 프갤러(112.216) 09:52 18 0
2870338 산불나면 [2] 배구공(119.202) 08:41 35 0
2870335 이거 뻘짓 한거냐??? [3] ㅇㅇ(211.241) 07:38 60 0
2870334 혹시 나처럼 등에 신경통 겪는 사람 있냐? [7] ㅇㅇ(223.38) 07:27 48 0
2870333 전쟁? 배구공(119.202) 07:21 28 0
2870332 보통 코테 얼마나 준비함? [1] ㅇㅇ갤로그로 이동합니다. 07:18 46 0
2870330 나는조현병이야 나는내향적이야 [1] 손발이시립디다갤로그로 이동합니다. 06:48 36 0
2870326 ❤✨☀⭐나님 시작합니당⭐☀✨❤ ♥냥덩이♥갤로그로 이동합니다. 06:31 27 0
2870324 90년대 게임 배구공(119.202) 06:13 23 0
2870323 전쟁나면 이민 가실 거 정함? [1] 넥도리아(112.170) 06:12 37 0
2870321 영화 러브레터 ost 배구공(119.202) 06:02 29 0
2870319 90년대 빌게이츠 아재 강연 배구공(119.202) 05:52 17 0
2870315 자다가 코 막힘 존나 심해서 꺳다 [5] 루도그담당(58.239) 05:30 45 0
2870313 7일에 올려보는 배구공(119.202) 05:28 34 0
2870309 '부정선거론' 한국계 법학자, "이재명 소년원 복역" 허위사실유포 [1] 발명도둑잡기(118.216) 04:04 36 1
2870306 증권시장 달러는 미국산 종이일 뿐이라서 공정하지 않다 발명도둑잡기(118.216) 03:32 15 0
2870305 [여적] 장하준의 ‘대선 제안’ 발명도둑잡기(118.216) 03:25 23 0
2870304 장하준 "야당 상법개정안 우려" 발명도둑잡기(118.216) 03:21 23 0
2870303 말하지 않는 자 말하려는 자. 댓글쓰려는 자 댓읽는자. 넥도리아(112.170) 03:18 19 0
2870301 스미스 선장은 정말 타이타닉의 영웅이었을까? 발명도둑잡기(118.216) 03:13 22 0
2870300 안타 까운 일이도 리버풀 은퇴 선수 디오구 조타와 안드레 실바 선수에게 넥도리아(112.170) 03:11 18 0
2870299 작은돈은 되고 큰 돈은 안된다는 부모님. 공임의가치를 돈으로 판단 넥도리아(112.170) 03:06 24 0
2870298 "옷이 젖을까 봐 강을 건너지 못하고" [2] 발명도둑잡기(118.216) 03:04 34 0
2870297 제네들 토해내면 어떻게 될지 궁금하다 넥도리아(112.170) 03:03 16 0
2870295 단순다수결 선거제 있는한 국민의힘 200년 넘게 지속가능 [3] 발명도둑잡기(118.216) 02:51 34 0
2870294 휴대폰 데이터 복구 가능할까요? 넥도리아(112.170) 02:47 20 0
2870293 어제 저녁 발명도둑잡기(118.216) 02:33 23 1
2870291 홍준표가 따라했던 코카콜라의 몰락 발명도둑잡기(118.216) 02:29 21 0
2870290 이해가 존나 안되는게 이준석은 그냥 프로그래밍 신비주의로 갔으면 [1] ㅆㅇㅆ(124.216) 02:27 84 1
2870289 권은비 좆되더라 [1] hrin(220.120) 02:25 217 0
2870288 준석이햄 코드 플로우 보니까 GPT가 짜준게 백프로임 그냥ㅋㅋ ㅆㅇㅆ(124.216) 02:22 66 0
2870287 이준석 보좌진은 그냥 코딩 관련 글 못올리게해라 ㅆㅇㅆ(124.216) 02:16 61 4
2870286 필리핀 공부방 사건 혹시 종교인이었나? 발명도둑잡기(118.216) 02:11 19 0
2870284 님들 저 졸업작품 추천좀 [4] 공기역학갤로그로 이동합니다. 02:07 42 0
2870283 미셸푸코- 감시와 처벌-감옥의 역사 발명도둑잡기(118.216) 02:02 21 0
2870281 류류가 욕을 먹어도 발명도둑잡기(118.216) 01:46 19 0
2870280 인공지능이 전염병 퍼뜨려서 인간 멸종이키는게 가장 위험하다 발명도둑잡기(118.216) 01:42 47 0
2870278 준석이가 만든 프로그램인데 어캐생각함? [6] ㅇㅇ(211.241) 01:36 94 1
2870277 민생 사는거 겁나 좋아하는 인간들 특징민 그냥 특징이 있어 특이 [1] 넥도리아(112.170) 01:19 39 0
2870275 겁나 성심 쓰는듯 휴대폰 사준다는 엄마. 그러나 아들은 반대 넥도리아(112.170) 01:15 22 0
2870273 zenfone 4 데이터 복구할까 민생지원쿠폰으로 가능할까 넥도리아(112.170) 01:11 17 0
뉴스 ‘더 시즌즈’ 주우재, 하하 신곡 안무 박보검에게 직접 전수…박보검 “위험하다” 왜? 디시트렌드 07.05
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2