How to study the C++ standard? (forward references in "3. Basic")

Discussion in 'C++' started by Boris Du¹ek, May 2, 2009.

  1. Boris Du¹ek

    Boris Du¹ek Guest

    Hi,

    I decided to read C++ standard to finally know the language well.

    However when I started to read chapter 3., I found that there are a
    lot of forward references in that chapter that make studying it
    basically impossible. I feel like it's made for those who already know
    the referenced definitions well, not for those who would like to study
    the standard (from cover to cover, like I want), which is what I am
    used to e.g. from math (and other) textbooks.

    Do you suggest that I skip (or rush through) this chapter on the first
    reading, or anything else?

    Thanks,
    Boris
    Boris Du¹ek, May 2, 2009
    #1
    1. Advertising

  2. * Boris Dušek:
    > Hi,
    >
    > I decided to read C++ standard to finally know the language well.
    >
    > However when I started to read chapter 3., I found that there are a
    > lot of forward references in that chapter that make studying it
    > basically impossible. I feel like it's made for those who already know
    > the referenced definitions well, not for those who would like to study
    > the standard (from cover to cover, like I want), which is what I am
    > used to e.g. from math (and other) textbooks.
    >
    > Do you suggest that I skip (or rush through) this chapter on the first
    > reading, or anything else?


    Uhm, you have set yourself an impossible goal.

    There are perhaps three persons in the world who have relatively complete
    knowledge of the C++98 standard (not to mention C++0x!).

    As Schroedinger (or whoever it was) is reported to have said when someone
    mentioned that only three people in the world really understood general
    relativity: "Three? Who's the third?"

    But section 3 about "basic concepts" isn't that bad, really.

    Just go very lightly over §3.4 (about name lookup).

    The C++ standard simply isn't made for reading. C++ is a language that one
    learns in layers: first a very broad picture, then the next layer filling in
    some details and adding some exceptions to what one first learned, then third
    layer doing the same but even more, and so on. The discussions in this group
    illustrate that for any apparently most simple feature there is an almost
    infinite amount of details and consequences to consider if one delves into it.


    Cheers & hth.,

    - Alf

    --
    Due to hosting requirements I need visits to <url: http://alfps.izfree.com/>.
    No ads, and there is some C++ stuff! :) Just going there is good. Linking
    to it is even better! Thanks in advance!
    Alf P. Steinbach, May 2, 2009
    #2
    1. Advertising

  3. Boris Du¹ek

    Bo Persson Guest

    Boris Dusek wrote:
    > Hi,
    >
    > I decided to read C++ standard to finally know the language well.
    >
    > However when I started to read chapter 3., I found that there are a
    > lot of forward references in that chapter that make studying it
    > basically impossible. I feel like it's made for those who already
    > know the referenced definitions well, not for those who would like
    > to study the standard (from cover to cover, like I want), which is
    > what I am used to e.g. from math (and other) textbooks.
    >
    > Do you suggest that I skip (or rush through) this chapter on the
    > first reading, or anything else?


    I think you might want to rush through all chapters once. :)

    The language isn't built up like math, so you will not always get one
    level built up from what you know before.

    One example where this is hard, from section 3:

    "Every name that denotes a label is introduced
    either by a goto statement (6.6.4)
    or a labeled-statement (6.1)."

    Now, when you present the labeled-statement in 6.1, how do you
    describe its use without mentioning the (then unknown) goto statement?

    Likewise, a truly horrible statement like:

    "An entity is a value, object, variable, reference, function,
    enumerator, type, class member, template, template
    specialization, namespace, parameter pack, concept,
    or concept map."

    could go either into chapter 3, like here, or would have to wait until
    the final chapter of the standard. If it did, you would have to read
    the entire book before realizing that these things have something in
    common - that they are all entities.




    No one will grasp the entire standard in one reading - perhaps not
    completely with any number of readings.


    Bo Persson
    Bo Persson, May 2, 2009
    #3
  4. Boris Dušek wrote:
    > However when I started to read chapter 3., I found that there are a
    > lot of forward references in that chapter that make studying it
    > basically impossible. I feel like it's made for those who already know
    > the referenced definitions well, not for those who would like to study
    > the standard (from cover to cover, like I want), which is what I am
    > used to e.g. from math (and other) textbooks.


    I don't think the standard is even intended to be a textbook for
    teaching the language.
    Juha Nieminen, May 2, 2009
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. qazmlp
    Replies:
    1
    Views:
    585
    Jonathan Turkanis
    Feb 15, 2004
  2. John Doty
    Replies:
    42
    Views:
    856
    Elizabeth D Rather
    Oct 16, 2006
  3. toton
    Replies:
    6
    Views:
    335
    Greg Comeau
    Oct 25, 2006
  4. grappletech
    Replies:
    28
    Views:
    744
    Gernot Frisch
    Nov 28, 2006
  5. Mukunda Lohani

    Standard Abroad Study Programs

    Mukunda Lohani, Jan 19, 2011, in forum: Python
    Replies:
    0
    Views:
    226
    Mukunda Lohani
    Jan 19, 2011
Loading...

Share This Page