By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,890 Members | 1,226 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,890 IT Pros & Developers. It's quick & easy.

Need advice about brushing up on my C++

P: n/a
First, Merry Christmas. I have been doing intensive Java programming for two years in school
(no choice on the language), but now I need to return to C++ because my resume is filled with
it both in Windows and Unix and I need work because I am graduating in a few months.

Instead of just reading books to refresh my memory, I'm going to build a large (4 month)
project that encompasses all the C++ material. I think this is a better way of learning and
you can use it on your resume. Do you experts agree, or should I stick with the books?

Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp. Which one of these camps do you
recommend developing an application for because there is no time to develop the application
for all 3. And if it is the Unix camp, which version is the most popular? And should I avoid
the libraries that are only available one platform?

Finally, any tips for passing the job interview concerning C++? My last job lasted 6 years
and I have been in school for 2 so it's been a while since I had to interview for a job.

Any help from the experts would be most appreciated. Thank you in advance.

Dec 23 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
Kevin Carne wrote:
Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp.


Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.

Dec 23 '05 #2

P: n/a
ca********@hotmail.com wrote:
Kevin Carne wrote:
Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp.

Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.


C++ under .NET (usually called "Managed C++") doesn't resemble usual C++
much at all - definitely not a good way to brush up on your general C++
skills. Since memory is managed, strange new keywords and methodologies
are introduced, standard libraries are mixed in with the platform
libraries and the code isn't at all portable or general, it would
probably damage your knowledge of C++ to code under this platform.
Dec 23 '05 #3

P: n/a

Kevin Carne wrote:
First, Merry Christmas. I have been doing intensive Java programming for two years in school
(no choice on the language), but now I need to return to C++ because my resume is filled with
it both in Windows and Unix and I need work because I am graduating in a few months.

Instead of just reading books to refresh my memory, I'm going to build a large (4 month)
project that encompasses all the C++ material. I think this is a better way of learning and
you can use it on your resume. Do you experts agree, or should I stick with the books?

Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp. Which one of these camps do you
recommend developing an application for because there is no time to develop the application
for all 3. And if it is the Unix camp, which version is the most popular? And should I avoid
Kev,

A few friendly advices:

If you're asking these type of questions, it obviously shows your
indecisiveness as well as lack of adequate preparation for corporate
environment, where former is discouraged, and latter recognized.
Brushing up on your programming as well as language skills is, by all
means, not knowing nor mastering it. Landing a good job requires the
mastery of the language, systems designs, algorithms, methodologies
(that included patterns), etc.
If you're still young and not in the great need to support yourself,
family, etc., go to grad school and get involved in graduate level
research, projects targeting software design and entire cycle; this
will also permit you to work more on independent projects as well as
perhaps doing a more specialized internship part-time. Let me
illustrate from my personal example:

When I landed my first job, company software was distributive
multiplatform. Additionally to knowing, or rather be an expert, in
programming language(s) and os methodologies (that is, concurrent
programming, synchronization, threads - all in depth), one needed to
know scripting (bash, perl, nt dos scripting), awk, sed, gdb, vi,
regular expressions, .net platform (as well as C#) in-house software
solutions, eclipse (really thoroughly), Data bases (sql,
store-procedures, etc) - I can go on and on. List is inexorable. It
takes practice, persistence, perseverance.

If you're reluctant, take your time - you will be rewarded handsomely.
Do not take dead- end job, just because it provides an ok income with
no career and professional growth where your skills can be meaningful
and incremental.

This newsgroup is a good start by the way.

the libraries that are only available one platform?

Finally, any tips for passing the job interview concerning C++? My last job lasted 6 years
and I have been in school for 2 so it's been a while since I had to interview for a job.

Any help from the experts would be most appreciated. Thank you in advance.


Dec 23 '05 #4

P: n/a

ca********@hotmail.com wrote:
Kevin Carne wrote:
Secondly, looking at hotjobs, dice, etc.., there seems to be 3 camps for C++ programmers. 1)
The unix camp. 2) the Win 32 camp. 3) the .NET camp.


Well, having looked at .net for a few hours it doesn't seem to have
very much in common with C++. The standard template library is
deprecated and there are gcnew keywords. The "purist" C++ will be
command-line code which should run in either unix or win32 or other
systems, and that is often what interview questions (and this
newsgroup) are about.


Using the VC++ .Net compiler you can compile unmanaged C++ code.
The VC++ .Net compiler does NOT have the standard template library
deprecated.
There is no longer support for the NON-Standard Template Library which
never was part of the C++ standard in the first place. IMHO, this is a
good thing, because it helps to reduce developement of code that is not
portable, and that is undefined.
VC++ 7.1 (.Net - 2003) is a more C++ compliant compiler then the GNU
3.x GNU compiler.

There are many employers who ask for a .Net programmer, but they don't
really want a manage C++ programmer. What they really mean is that
they want a C++ programmer that knows the VC++ .Net IDE.

So when you look at the .Net camp, check to see if the employer is
really looking for a manage C++ programmer, or unmanage C++.
Generally speaking, unmanage C++ is referring to regular standard C++
developement.

I recommend doing a project using the .Net - 2003 compiler and the GNU
3.x compiler that is portable in both windows and Linux/Unix. Look for
a project that requires multithreading, synchronization, and sockets.
You can help keep your program portable by using the boost library. It
has portable multithreading and synchronization libraries.
Make sure you try to include templates and STL coding in your project
to help you get familiar with the syntax and proper usage.

Dec 23 '05 #5

P: n/a
Thank you all for your ideas, especially Axter for the advice. Happy
Holidays.
Dec 23 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.