473,583 Members | 4,428 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Where do I go from here? (Learning C++)

I'm looking for some advice in teaching myself how to program.

I just finished reading O'Reilly's Practical C++ Programing. I can do
anything that was convered in the book very comfortably without
referring to the back. This is something I'm very interested in so I
spent several hours each night going through the exercise programs.

I'm curious where I should go from here. I'm interested in learning
how to create useful programs w/ GUIs on various platforms (Windows,
Mac OS, Linux). Ideally, I'd like to create a new email client and
address book for both Windows & Linux.

I'm currently using a Powerbook w/ XCode to develop these programs but
I have access to Windows. Is there any books you could suggest that
would be a continuation of what I already know and lead me towards
creating useful applications?

Thanks

James

Jul 22 '05 #1
6 1282
Try Qt, which is a GUI library run on Linux, Windows and Mac OS

visit www.trolltech.com for more information
"James" <se******@fredo nia.edu> ??????:10****** ********@news-east.n...
I'm looking for some advice in teaching myself how to program.

I just finished reading O'Reilly's Practical C++ Programing. I can do
anything that was convered in the book very comfortably without
referring to the back. This is something I'm very interested in so I
spent several hours each night going through the exercise programs.

I'm curious where I should go from here. I'm interested in learning
how to create useful programs w/ GUIs on various platforms (Windows,
Mac OS, Linux). Ideally, I'd like to create a new email client and
address book for both Windows & Linux.

I'm currently using a Powerbook w/ XCode to develop these programs but
I have access to Windows. Is there any books you could suggest that
would be a continuation of what I already know and lead me towards
creating useful applications?

Thanks

James

Jul 22 '05 #2
James posted:
I'm looking for some advice in teaching myself how to program.

I just finished reading O'Reilly's Practical C++ Programing. I can do
anything that was convered in the book very comfortably without
referring to the back. This is something I'm very interested in so I
spent several hours each night going through the exercise programs.

I'm curious where I should go from here. I'm interested in learning
how to create useful programs w/ GUIs on various platforms (Windows,
Mac OS, Linux). Ideally, I'd like to create a new email client and
address book for both Windows & Linux.

I'm currently using a Powerbook w/ XCode to develop these programs but
I have access to Windows. Is there any books you could suggest that
would be a continuation of what I already know and lead me towards
creating useful applications?

Thanks

James

Be very very very weary of Win32 programming with C++.

If you open up MS Visual C++ and let the wizard create the skeleton of a
Win32 GUI program for you, then you get provided with the most disgusting
code known to man. For instance, there are macros everywhere throughout the
windows header files. You also cannot include one particular windows header
file in a source file. For instance:

//blah.cpp

#include <winnt.h>

This won't compile. There's unrecognized words in "winnt.h". What in actual
fact is happening is that "winnt.h" is referring to stuff which was defined
in "windows.h" . So shouldn't "winnt.h" include "windows.h" ... ?

Another thing, you won't see:

static_cast
reinterpret_cas t

in windows code, you'll see:

(BRUSH)5;

which is pretty disgusting in my own opinion.

I'm actually working on something at the moment... I created the Win32 GUI
project with the wizard, but now I'm re-organizing it. I'm not finished yet
though. It's starting to look nice, I've made use of namespaces, exceptions,
the new-style casts. Pretty much turning horrid C code into beautiful C++
code. If you'd like to compare the before and after, then I'll post it here.

As far as becoming very proficient in C++... well I would recommend posting
and reading here as often as you can. I've read ~4 C++ books, must I've
learned most and attained most clarity in this newsgroup.
-JKop
Jul 22 '05 #3
> I've read ~4 C++ books, must I've learned most and attained most
clarity in this newsgroup.

That's the weirdes typo I've ever made!
I've read ~4 C++ books, but I've learned most and attained most clarity in
this newsgroup.
-JKop
Jul 22 '05 #4
> weirdes
And again!
weirdest
-JKop
Jul 22 '05 #5
JKop wrote:
Be very very very weary of Win32 programming with C++.


I presume you meant "wary" - but that sentence works quite nicely if
you prepend "You will ".

;-)

--
Lionel B

Jul 22 '05 #6
James wrote:

I'm looking for some advice in teaching myself how to program.

I just finished reading O'Reilly's Practical C++ Programing. I can do
anything that was convered in the book very comfortably without
referring to the back. This is something I'm very interested in so I
spent several hours each night going through the exercise programs.

I'm curious where I should go from here. I'm interested in learning how
to create useful programs w/ GUIs on various platforms (Windows, Mac OS,
Linux). Ideally, I'd like to create a new email client and address book
for both Windows & Linux.

I'm currently using a Powerbook w/ XCode to develop these programs but
I have access to Windows. Is there any books you could suggest that
would be a continuation of what I already know and lead me towards
creating useful applications?

You have two options, either continue with system specific stuff like
Windows etc GUI applications (that is learn a system-specific library),
or continue to master ISO C++.
1) In the case you want to move to system-specific stuff, and you are
interested in the MS Windows world, the definite way to go is .NET. Do
not waste brain cells to learn deprecated stuff like Win32.
Good books for .NET are

"Visual C++ .NET" Step by Step by Microsoft, but which contains many
technical C++ inaccuracies (that is, it says many erroneous/crap stuff
regarding ISO C++, like it performs many unneeded casts, like
dynamic_cast, while no cast is needed in most times or static_cast<>
would suffice).
"Visual C++ .NET How to Program" by Deitel, which is the book I am
currently reading, and I am recommending to you for learning .NET. It is
of high quality, highly ISO C++ precise and it covers much material (it
makes you intermediate level .NET programmer).
2) In the case you want to continue mastering ISO C++, even after having
learned .NET, the definite way to go is "The C++ Programming Language"
3rd Edition or Special Edition by Bjarne Stroustrup, the creator of C++.

Keep in mind that reading (and understanding what you read) this book
will take few years. :-)

--
Ioannis Vranos

http://www23.brinkster.com/noicys
Jul 22 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

37
2782
by: michele.simionato | last post by:
Paul Rubin wrote: > How about macros? Some pretty horrible things have been done in C > programs with the C preprocessor. But there's a movememnt afloat to > add hygienic macros to Python. Got any thoughts about that? "Movement" seems quite an exaggeration. Maybe 2-3 people made some experiments, but nobody within the core Python developers...
5
12340
by: Applebrown | last post by:
Hello, basically, I'm just learning intermediate CSS and trying to convert my old table webpage completely to CSS. Hoorah, right? Well, it's not quite going as planned. It's an extremely simple layout, and I'm finding myself stuck with small white space in between my images where I planned for the graphics to be stacked up right on top of one...
20
2591
by: Rich Grise | last post by:
I've been lurking for awhile, and I notice that there are some real tight-assed prigs around here. Bitch, bitch, bitch. So what if it's not "Standard C?" If it looks like C, smells like C, quacks like C, and compiles like C, it's probably close enough.
3
2275
by: Xiangliang Meng | last post by:
Hi, all. In 1998, I graduated from Computer Science Dept. in a university in China. Since then, I've been using C Language for almost 6 years. Although I'm using C++ in my current job, I'm also interested in understanding C more and deeper at the same time. In the past half year, I decide to improve myself on C, read some books on C and...
6
1183
by: Dica | last post by:
i've been asked to write an app making use of reports.vb class, but i can't seem to find it..
5
1969
by: Amai | last post by:
I'm ineterested in learning ASP.NET, in conjunction with both C# and VB.NET. However, i don't really know where to start. Are there classes available at local colleges, or do i have to go through microsoft to find classes? would it be easier to try learning on my own by purchasing Dummies books and microsoft official books? Would it be...
33
2115
by: NicolasG | last post by:
Hi, I want to be a professional python programmer, unfortunately I'm working on technical support and don't have the time/patience to start making projects my self. I tried to apply to some Python positions but unfortunately sometimes to work as a programmer is really hard in this world, every employee requires professional experience and...
41
18130
by: Miroslaw Makowiecki | last post by:
Where can I download Comeau compiler as a trial version? Thanks in advice.
4
1345
by: John Sheppard | last post by:
Hello, I am working on a 3teired project, data,bizlogic, userinterface...I have a global class that at current is being passed around as parameters, this is, to say the least messy... I am reading up about singletons, but I wonder where to place it? Should I stick it in with the userinterface....how do I make it globally accessable if...
0
7825
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
8179
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. ...
0
8323
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that...
0
6578
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
0
5372
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3816
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3841
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2331
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
0
1155
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.