Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Ale Contenti: VC++ Safe Libraries and More

Download

Right click “Save as…”

  • Mid Quality WMV (Lo-band, Mobile)
  • MP3 (Audio only)
  • MP4 (iPhone, Android)
  • High Quality MP4 (iPad, PC, Xbox)
  • Mid Quality MP4 (Windows Phone, HTML5, iPhone)
  • WMV (WMV Video)
Ale Contenti is a Senior Development Lead on the VC++ team. He works primarily on Safe Libraries and associated constructs. Here, we learn about what's new in VC SL (checked iterators are certainly cool - and fast too), things to think about in terms of writing "safe" C++, future thinking in this area, and how to write a useful and performant C++ program without using pointers explicitly.

VC++ continues to evolve...

Enjoy.

Tags:

Follow the Discussion

  • abkrinoabkrino Time...Time There is always no TIME
    more c++ Smiley
  • I work for a games development studio. In my team the core engine group, some of the upper management dislike STL for the following reasons and c++ in general (they only use a small subset of c++ features such as function overloading etc):

    policy is code non grata. reasons are code bloat, reliance on advanced compiler features, debug build performance, memory allocation patterns, complexity of code, and that it's a loaded gun for less experienced coders.

    Others on the team have worked with STL effectively on previous projects however, by using custom allocators. Especially for things like strings, where the thing will fragment like hell if you don't.

    Also problems I have found is that different STL implementations on non-microsoft based platforms in the past have been less than optimal, and it very much changes on a per platform basis. The reality is when your working at a game studio, some console providers don't have the great support Microsoft do with tools etc.
  • Hi lantree,

    I agree with you. I really think C++ in general (and STL as an example of a powerful C++ library) has a lot to offer in environment like the one you work on. You just mention one great example when talking about custom allocators for memory management.

    Few other languages let you control memory in such a fine, elegant and expansible way. Reading your post, I remembered one talk from Alexandrescu (Chromed Metal: C++ Idioms that Are Safe and Fast, I guess this paper covers some of it http://www.erdani.org/publications/cuj-2005-12.pdf) and one from Scott Meyers (When C++ Hits the Hardware, http://www.aristeia.com/short-courses.html#wchth) which describe interesting solutions.

    As we say in the video, C++ is powerful and somewhat dangerous, in the sense that it lets you do a lot of things (and some bad things as well, if you're not careful Wink). With checked iterators, we tried to make the iterators less dangerous, without sacrifying performance.

    I'd like to hear from you more specific scenarios where we could do a better job in harnessing the power of C++. Do you need some pre-packaged allocator to simplify memory management? Do you need tools to measure code bloat? Please let us know!

    One question: What do you mean with code complexety? You mean code complexity in the STL itself, or using it?

    Unfortunately, we can't control the STL implementations of other vendors. Anyway, please note that we get our STL implementation from dinkumware (www.dinkumware.com), and they support more platform than VC++ does, I believe. Also, let us know which platform you need support on... you never know... (maybe we have a compiler in the box you can use... Smiley)

    And have you tried using VC++ IDE to drive your compilers?

    Thx for your comments!

    Ale Contenti
    VC++ Libraries Dev Lead

  • Hello

    Ale and Louis (Lafreniere) recently recorded the follow-up channel 9 video to this one - Ale Contenti and Louis Lafreniere: Understanding Exceptions and When/How to Handle Them, you can view the video at: http://channel9.msdn.com/Showpost.aspx?postid=343189

    Thanks Damien

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.