Thread: C++0x ???

  1. #1
    Registered User Sshakey6791's Avatar
    Join Date
    Nov 2008
    Location
    -
    Posts
    57

    Exclamation C++0x ???

    Any information about C++0x...... Dose anyone know what the big difference are going to be? Am I going to have to learn everything over again?

  2. #2
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    For a new standard to be acceptable to the majority of users, it is generally considered better to make sure that the old style code works too - so "learning anew" is not the case. There will be some extensions to the existing language and library, but it's evolution, not revolution.

    If you search the forum, you'll find a few references to and discussions about the new standard.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  3. #3
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    I suggest that you read: The State of the Language: An Interview with Bjarne Stroustrup.

    You could also read the Wikipedia article on C++0x, but it probably contains inaccuracies.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  4. #4
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    I hope they finish it soon, otherwise they might need to call it C++1x Strange how the name isn't even Y2K compliant.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  5. #5
    Registered User
    Join Date
    Oct 2008
    Posts
    1,262
    Quote Originally Posted by cpjust View Post
    I hope they finish it soon, otherwise they might need to call it C++1x Strange how the name isn't even Y2K compliant.
    Actually, I've heard they will use hexadecimal numbers then, so C++0a for 2010, C++0b for 2011... So to make it C++10, it'd have to be released in 2016 .

  6. #6
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Yeah, I heard that too. It will probably become C++0A or so last I heard. And that was from PDC from a Microsoft employee working with Visual Studio.
    But fret not, for a lot of C++0x features are beginning to make its way into compilers already.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  7. #7
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    The C++0A is more of an insider joke than a real idea, I think. But anyway.

    The Wikipedia article is OK. There was one gross inaccuracy that I recently fixed, but I believe everything else is in pretty good shape.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  8. #8
    Registered User
    Join Date
    Apr 2006
    Posts
    2,149
    The only major habit changing changes are concepts, which adds better type safety to templates, and nullptr.

    Everything else is just features.

    EDIT: forgot about nullptr.
    Last edited by King Mir; 12-04-2008 at 05:29 PM.
    It is too clear and so it is hard to see.
    A dunce once searched for fire with a lighted lantern.
    Had he known what fire was,
    He could have cooked his rice much sooner.

  9. #9
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    There are more type-safe enums, as well.
    But I think it is unfair only to mention these features, since C++0x will contain a lot more verrrrrrrrrry nice features.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  10. #10
    Registered User
    Join Date
    Apr 2006
    Posts
    137
    If it was C++0A, it wouldn't make any sense.

    It would probably be
    C++0x0A

    Although my point would be, why not just do
    C+=2 or C+++ lol. Seems silly.

    Anyway I thought C++ was finished, and D was going to be used in the future?
    ★ Inferno provides Programming Tutorials in a variety of languages. Join our Programming Forums. ★

  11. #11
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    "0x" is just a notation used in C++ to tell the compiler it is a hex number; nothing more, so C++0A is fine.
    And C++ is very much alive and kicking and not going anywhere soon.
    Forget D! Stay with the tried and true C++!
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  12. #12
    The larch
    Join Date
    May 2006
    Posts
    3,573
    Forget D! Stay with the tried and true C++!
    I haven't tried it, but isn't it supposed to be a) compiled to machine code, b) do away with the backwards compatibility problems C++ inherited from C, c) let you do your own memory management (though garbage collection is also available). So exactly, what are your arguments against it?
    I might be wrong.

    Thank you, anon. You sure know how to recognize different types of trees from quite a long way away.
    Quoted more than 1000 times (I hope).

  13. #13
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Mostly unfamiliarity. It was sarcasm, not anti-arguments.
    Also, D is too young to be practical yet. No good IDE to my knowledge. Lack of const correctness.
    The whole function_name = n syntax is horrible and disgusting.

    Perhaps D may become something yet, but as of right now, it is not.
    Last edited by Elysia; 12-05-2008 at 05:10 AM.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  14. #14
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    D is not that young, but the fact that it still really hasn't caught on suggests that it won't.

    D suffers from sitting in an uncomfortable middle ground (C++ programmers tend to see it as a peculiar little brother of C++, while Java/C# programmers have never heard of it and wouldn't care about such a language anyway) and from a rather poor standard library, which lacks vision and extent. (The Java standard library and the .Net framework have extent, the C++ standard library has vision.)
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  15. #15
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by CornedBee View Post
    ...and from a rather poor standard library, which lacks vision and extent. (The Java standard library and the .Net framework have extent, the C++ standard library has vision.)
    That's what I mean by young. It has one version, a second experimental and lacking features that C++ take for granted - such as const correctness and has a poor standard library.
    Granted, that should all change over time, when it becomes older and is my point. D is too young right now.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed