i am a vc++ beginner ,which books is suitable to me?

N

nick

i haven't learnt c++ before ,if i want to learn vc++,do i need to buy a c++
book to learn before i learn vc++?

or some vc++ books are suitable to someone who hasn't learnt c++ before?

any suggestions?


thanks!
 
B

Bill

Hello Nick,

With my experience in C++, I must say that when one learns C++ what
she/he
should concentrate at is learning the best practices of C++ since its
easy to get mis-directed and inculcate bad habits for a beginner while
learning this language. Your best bet would be to get a good book, if
you can. Two of the many good books that I know are:
1) C++ How to Program (4th Edition)by Harvey M. Deitel, Paul J. Deitel
Prentice Hall; 4 edition (August 12, 2002) ISBN: 0130384747
2) C++ Primer (4th Edition)by Stanley B. Lippman, Josée Lajoie,
Barbara E. Moo
Addison-Wesley Professional; 4 edition (February 25, 2005)
ISBN: 0201721481

I would start with the first one. Well, thats just my opinion.

Bill
 
S

Sethalicious

Yes you have to learn C++ before using VC++.

No, you can learn C++ using just about any compiler. VC++ is a
compiler that compiles C++ code. So you can use VC++ to learn C++.
Visual C++ is just the name of the product, not a special type of C++.

Visual C++ 2003 (v7.1) is also 98% standards compliant. I think the
only other compiler out there that's even more compliant is the Edison
Design Group's compiler.

Does anyone know what percentage Borland or g++ is when it comes to
standards compliance?
 
S

Sethalicious

Did I say the opposite?

You said that nick needed to learn C++ "before" using VC++. I was
thinking that people were saying that VC++ was a different programming
language and not a compiler. Sorry if I misinterpreted your response
to nick's post.
 
J

Jerry Coffin

Visual C++ 2003 (v7.1) is also 98% standards compliant. I think the
only other compiler out there that's even more compliant is the Edison
Design Group's compiler.

While people, engineers in particular, like a single number to rate
conformance, most such ratings mean little. The number given is usually
based on the percentage of tests in a suite that are passed, but the
relationship between the tests passed and the number of areas in which
the compiler doesn't conform is more or less coincidental.

The bottom line is that there are quite a few different areas being
looked at, and any single number is basically a weighted average of all
those other numbers. The weighting used (even if it's an even
weighting) is basically an expression of an opinion by the
tester/statistical analyst about the relative value/importance of the
features exercised by the individual tests. An even weighting means one
of two things: 1) the tester considers all features equally important,
or 2) the tester really hasn't given much consideration to what he's
doing. At least IMO, either places the outcome in considerable doubt.
Does anyone know what percentage Borland or g++ is when it comes to
standards compliance?

No, nobody does (for any compiler). :) Many people have opinions, but
nobody "knows" for the simple reason that this isn't "knowable".

With that given, I'll give my opinion on the subject:

At least based on the last time I tried to look at things, both of
these are what I'd consider somewhat behind. Borland is more or less
uniformly so (albeit not by a huge margin). I would say that Borland
seems to succeed or fail in what I'd call a more coherent fashion --
i.e. it seems to me much easier to get an idea of how obscure of code
it'll work or fail on. MS works perfectly for a lot of really obscure
code, but then fails on things that _seem_ much simpler.

g++ seems to have slightly better conformance in the language proper,
but the library seems fairly clearly behind. I consider it behind
overall for the simple reason that I more frequently have problems
getting it to accept code I'm fairly certain is correct. This is where
opinions come into the picture though: for me, on a practical basis, it
causes problems more frequently. I'm quite certain that's due in large
part to the code I write though. Somebody else who writes different
code might easily consider g++ anywhere from slightly to considerable
ahead of VC++.

In the end, such a number has little use in itself -- it's merely a
prediction of how likely you are to have problems getting that compiler
to accept your correct code. Without knowing quite a bit about the
intended user and the type of code they write, such a prediction about
these compilers is likely to correlate poorly with reality.

A final observation: the "single number" approach seems to me largely
an artifact of print media. If you're writing a magazine article (for
example) you have little choice but to present and summarize the facts
as you seem them. The interactivity of the web provides for much
greater possibilities -- collect information about the user and the
code s/he works with, and give a rating relative to that type of code.

At one extreme this might be a short questionaire about your code. A
more comprehensive version might allow the user to upload an archive of
their code. This would then be run through each compiler and any error
messages, etc., made available to the user along with a summary about
what percentage of their code was accepted by each compiler.

Then again, who'd want to replace the fun and excitement of compiler
flame wars with real information? :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top