Moving from C# to C++
-
Even if you don't get a job doing C++, it's a good thing to learn C++. It helps to learn where newer languages come from, and it helps to learn where the "missing features" are as well (full use of const in c# anybody?).
"WPF has many lovers. It's a veritable porn star!" - Josh Smith
As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
-
I did C at university, but I got a C# job immediately after leaving so I'm a bit rusty. Thanks for the recommendation - I do like books to be free :) Thanks, Chris
In this case you may consider spending one week playing with the C pointers. Make your own queue, use multiple references, break the memory, use function pointers etc. In some OOP scenarios in C++ you will need to be very familiar with the pointers.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
My understanding is that you can also use C/C++ as a lingua franca when talking to other developers, so no shortage of reasons to learn! Thanks, Chris
That kind of depends - a lot of VB programmers won't understand you (and one heckuva lot of PHP developers either).
"WPF has many lovers. It's a veritable porn star!" - Josh Smith
As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
-
c2423 wrote:
This is the second reccomendation for Stroustrup,
Well, it IS his language :-)
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
Yep, and whole conferences just stop when his hand goes up in the middle of a session.... :laugh:
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
Yes, but only C# programmers with strong C++ experience knows that the unsafe context exists in C#. ;)
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
I've seen it occasionally in 3rd party, or reflected framework code, but aside from one failed (performance issues) attempt at writing an rs232 library I've never actually written any in 4 years with .net.
The European Way of War: Blow your own continent up. The American Way of War: Go over and help them.
-
My understanding is that you can also use C/C++ as a lingua franca when talking to other developers, so no shortage of reasons to learn! Thanks, Chris
IMO C#, Java, or even (shudder) VB are better for that than C/++. The former two share a syntax with their predecessors while not possessing as many obscure items or as complex a syntax to confuse people who haven't used it recently. By not having as many complex features C#/java are easier on someone who's familiar with a Cstyle language but not the specific one being used. The virtue of Vb's many sins is verbosity, and while annoying in many ways being verbose makes it easier to figure out if you're not familiar with it. That said, as long as you're not writing in an obfuscation tool masquerading as a programming language if you can't get the jist of a reasonable size snippet of code in an unfamiliar language you're probably not in the right business. EDIT: ... or at a minimum you should change your job title from developer/computer scientist/software engineer to code monkey.
The European Way of War: Blow your own continent up. The American Way of War: Go over and help them.
-
I've seen it occasionally in 3rd party, or reflected framework code, but aside from one failed (performance issues) attempt at writing an rs232 library I've never actually written any in 4 years with .net.
The European Way of War: Blow your own continent up. The American Way of War: Go over and help them.
dan neely wrote:
but aside from one failed (performance issues) attempt
No why does that not surprise me... the performance issues, specifically ... ;)
-
Yep, and whole conferences just stop when his hand goes up in the middle of a session.... :laugh:
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
Sort of like when God says "Uh, excuse me..."
Software Zen:
delete this;
Fold With Us![^] -
Sort of like when God says "Uh, excuse me..."
Software Zen:
delete this;
Fold With Us![^]That's exactly it. A ball of silence emanating from the hand in question, followed by giggling from all around the hall as people began to realise exactly who's hand that was.... :laugh: It happened at ACCU 2007 during a slightly opinionated Dan Saaks session on the correct use of const. The price of the conference was worth it just to see that one event!
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
That's exactly it. A ball of silence emanating from the hand in question, followed by giggling from all around the hall as people began to realise exactly who's hand that was.... :laugh: It happened at ACCU 2007 during a slightly opinionated Dan Saaks session on the correct use of const. The price of the conference was worth it just to see that one event!
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
I wish I would have seen that. We hired Saks to come in and teach a course in C++ back in the mid 90's. He was a good instructor, but I remember there were certain things that could cause him to go off on a tangent,
const
among them.Software Zen:
delete this;
Fold With Us![^] -
That's exactly it. A ball of silence emanating from the hand in question, followed by giggling from all around the hall as people began to realise exactly who's hand that was.... :laugh: It happened at ACCU 2007 during a slightly opinionated Dan Saaks session on the correct use of const. The price of the conference was worth it just to see that one event!
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
You're such a geek Anna! ;)
"Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg
I do try. :-\
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
I wish I would have seen that. We hired Saks to come in and teach a course in C++ back in the mid 90's. He was a good instructor, but I remember there were certain things that could cause him to go off on a tangent,
const
among them.Software Zen:
delete this;
Fold With Us![^]It was quite something, that's for sure! :laugh:
Anna :rose: Having a bad bug day? Tech Blog | Anna's Place | Tears and Laughter "If mushy peas are the food of the devil, the stotty cake is the frisbee of God"
-
In this case you may consider spending one week playing with the C pointers. Make your own queue, use multiple references, break the memory, use function pointers etc. In some OOP scenarios in C++ you will need to be very familiar with the pointers.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
That kind of depends - a lot of VB programmers won't understand you (and one heckuva lot of PHP developers either).
"WPF has many lovers. It's a veritable porn star!" - Josh Smith
As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
-
IMO C#, Java, or even (shudder) VB are better for that than C/++. The former two share a syntax with their predecessors while not possessing as many obscure items or as complex a syntax to confuse people who haven't used it recently. By not having as many complex features C#/java are easier on someone who's familiar with a Cstyle language but not the specific one being used. The virtue of Vb's many sins is verbosity, and while annoying in many ways being verbose makes it easier to figure out if you're not familiar with it. That said, as long as you're not writing in an obfuscation tool masquerading as a programming language if you can't get the jist of a reasonable size snippet of code in an unfamiliar language you're probably not in the right business. EDIT: ... or at a minimum you should change your job title from developer/computer scientist/software engineer to code monkey.
The European Way of War: Blow your own continent up. The American Way of War: Go over and help them.
-
I already know C# and I'm trying to learn C++ (it seems to be more required by employers.) All the reference material I have on C++ is geared to learning from absolute basics and I get tired of reading about the difference between ++x and x++ etc (I still read it in case there happens to be something subtle that I wouldn't already know.) So can anybody recommend any good resources that are comprehensive, but won't re-cover stuff thats the same in C#? Thanks, Chris
Really? I've been looking for a C++ gig for ages but everywhere seems to me to be after C#, VB.NET, VB6, Delphi, PHP and / or Java. Or even worse, Sharepoint.
-
Really? I've been looking for a C++ gig for ages but everywhere seems to me to be after C#, VB.NET, VB6, Delphi, PHP and / or Java. Or even worse, Sharepoint.
The companies I'm applying to all seem to want C++ as well as C#. I imagine they have a lot of older code that needs moving. The problem is that I know I could do the jobs (its not exactly hard to read/work out what is supposed to be happening in the old code), but getting past interviews is the hard part!
-
I already know C# and I'm trying to learn C++ (it seems to be more required by employers.) All the reference material I have on C++ is geared to learning from absolute basics and I get tired of reading about the difference between ++x and x++ etc (I still read it in case there happens to be something subtle that I wouldn't already know.) So can anybody recommend any good resources that are comprehensive, but won't re-cover stuff thats the same in C#? Thanks, Chris
-
You're such a geek Anna! ;)
"Creating your own blog is about as easy as creating your own urine, and you're about as likely to find someone else interested in it." -- Lore Sjöberg
Personally I don't recommend Stroustrup -- you should certainly own a copy and read it at some point but it's not great for learning from. I keep a detailed list with comments at http://www.markjoshi.com/RecommendedBooks.html