Chapter 2: Standardization_《C++20Get the details》_notes

发布于:2025-04-03 ⋅ 阅读:(13) ⋅ 点赞:(0)

Key Focus:

  1. WG21 Structure:

    • C++ standardization is managed by Working Group 21 (WG21).
    • Divided into three stages:
      • Stage 3: Finalizes wording (Core Language Working Group, CWG; Library Working Group, LWG).
      • Stage 2: Evolves language/library features (EWG for core language, LEWG for libraries).
      • Stage 1: Domain-specific research via Study Groups (SGs).
    • Study Groups (e.g., SG1 for concurrency, SG6 for numerics) incubate proposals before formal review.
  2. Challenges:

    • Understanding the roles of Study Groups (e.g., SG15 for tooling, SG16 for Unicode).
    • Distinguishing between stages (e.g., Stage 1 vs. Stage 2 responsibilities).
    • Recognizing the impact of domain-specific SGs (e.g., SG21 for Contracts, SG22 for C/C++ liaison).

Multiple-Choice Questions

Question 1
Which of the following are responsibilities of Stage 3 in the C++ standardization process?
A. Reviewing domain-specific proposals
B. Finalizing core language wording
C. Approving library evolution
D. Ensuring consistency in technical documentation

Question 2
Which Study Groups are directly involved in concurrency and parallelism?
A. SG1
B. SG7
C. SG14
D. SG21

Question 3
What distinguishes Stage 1 from Stage 2?
A. Stage 1 handles wording finalization.
B. Stage 2 focuses on domain-specific incubation.
C. Stage 1 involves Study Groups for early research.
D. Stage 2 approves language/library evolution proposals.

Question 4
Which Study Groups are related to tooling and Unicode?
A. SG15
B. SG16
C. SG18
D. SG20

Question 5
True or False: The Library Evolution Working Group (LEWG) is part of Stage 2.
A. True
B. False

Question 6
Which of the following are NOT valid Study Groups?
A. SG3 (File System)
B. SG9 (Ranges)
C. SG12 (Undefined Behavior & Vulnerabilities)
D. SG19 (Quantum Computing)

Question 7
What is the role of SG22?
A. Coordinate between C and C++ standards
B. Design contracts for code correctness
C. Develop networking libraries
D. Improve low-latency programming

Question 8
Which stages require collaboration with EWG or LEWG?
A. Stage 1
B. Stage 2
C. Stage 3
D. All stages

Question 9
Which Study Group focuses on compile-time programming?
A. SG6
B. SG7
C. SG8
D. SG9

Question 10
What is a key output of Stage 3?
A. Feature proposals
B. Approved technical specifications
C. Finalized standard draft
D. Domain-specific research papers


Answers & Explanations

  1. B, D

    • Stage 3 finalizes wording (B) and ensures documentation consistency (D). Stage 1 handles domain proposals (A), and Stage 2 approves library evolution ©.
  2. A

    • SG1 handles concurrency. SG7 (compile-time), SG14 (low-latency), and SG21 (Contracts) are unrelated.
  3. C, D

    • Stage 1 uses Study Groups ©, while Stage 2 approves evolution (D). Stage 3 handles wording (A), and Stage 2 does not focus on incubation (B).
  4. A, B

    • SG15 (tooling) and SG16 (Unicode). SG18 (LEWG incubator) and SG20 (education) are unrelated.
  5. A

    • LEWG is part of Stage 2, which handles library evolution.
  6. D

    • SG19 focuses on machine learning, not quantum computing. SG3, SG9, and SG12 are valid.
  7. A

    • SG22 coordinates C/C++ standards. Contracts (B) are SG21, networking © is SG4, and low-latency (D) is SG14.
  8. B

    • EWG/LEWG are Stage 2 groups. Stage 1 uses SGs, and Stage 3 uses CWG/LWG.
  9. B

    • SG7 focuses on compile-time programming. SG6 (numerics), SG8 (Concepts), and SG9 (Ranges) are unrelated.
  10. C

  • Stage 3 produces the finalized standard draft. Proposals (A) and specifications (B) are Stage 2 outputs; research (D) is Stage 1.

网站公告

今日签到

点亮在社区的每一天
去签到