DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
  1. DZone
  2. Data Engineering
  3. Data
  4. C# vs. C++: Compare and Transition

C# vs. C++: Compare and Transition

John Esposito user avatar by
John Esposito
·
Feb. 21, 12 · Interview
Like (0)
Save
Tweet
Share
8.11K Views

Join the DZone community and get the full member experience.

Join For Free

While browing Jerry Nixon's latest blogposts I stumbled across a link to an awesome guide for anyone transitioning from C# to C++, written by Michael McLaughlin and posted on his blog and as a pdf.

Michael describes his guide like this:
 

This is a somewhat short guide to the important things to know if you are a C# programmer and find yourself needing or wanting to work in C++, for example to create Metro style games for Windows 8 using C++ and DirectX.


It's very organized, starting with more abstract things like namespaces, fundamental types, objects (including inheritance and union), functions, and moves on to more concrete issues (string handling, list types, storage duration, lambda expressions). All in just 52 pages, so think about it if you're a C# coder and want to move a little closer to the metal.

The guide wasn't actually super-useful to me, though, because I learned a bit of C++ rather too many years ago, when C# barely existed -- so my quick browse left me wondering more about the other direction: C# for a C++-er. And Jesse Liberty on MSDN does have an old article explaining just this, quite concisely, with due emphasis on the difference between an unmanaged (C++) and managed (C#) environment.

But I like feature-lists, so I found a neat little checklist from 2007, on the no-longer-active-but-once-thriving Thinking Parallel blog, with TONS of useful discussion in the comments afterwards. If you're a C#-er transitioning, to C++, you may feel a little disappointed at what C# does, and C++ doesn't do: garbage collection, for instance, or built-in threading support, or Unicode string encoding, or treating arrays as objects. But you might feel exhilirated as well (destructors!).

Most importantly, perhaps: the discussion on this post is still active (latest post: Feb1, 2012), and the checklist seems to have become a significant space for C#-to-C++-and-vice-versa discussion. So check out the checklist if you're thinking of moving from one to the other -- or the discussion, if you have questions, or perhaps already have something to contribute.

 

c++ Data Types POST (HTTP) Blog Object (computer science) Strings DirectX Programmer (hardware)

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Java REST API Frameworks
  • Container Security: Don't Let Your Guard Down
  • Real-Time Analytics for IoT
  • How To Handle Secrets in Docker

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: