• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 243
  • Last Modified:

Good C++ Book

Hi,
I've programmed C++ (with MFC) for Windows for about 2 years, but now I'm making the switch to Linux. I'm looking for a good book that could teach me how to program C++ for Linux.
0
zxcvzxcv
Asked:
zxcvzxcv
  • 4
  • 2
1 Solution
 
XTermCommented:
Well, the ANSI C++ si exactly the same, but MFC does not exist in Linux. I recommend (since you know MFC) to buy a book on QT.
0
 
zxcvzxcvAuthor Commented:
To run certain KDE apps I've noticed that I needed to get certain QT versions, and libraries, what exactly is QT?
0
 
XTermCommented:
Qt is a platform independant extension of C++. It does basically the same as MFC,but it has some great advantages over MFC. For example, Qt runs on all platforms who have g++, then GNU c++ compiler. (That are almost all Unixes, MacOS X, and windows can compile Qt as well.) A Qt program written in linux, will compile and run on windows and on Mac, a program written on a Mac, wil compile and run on windows and linux etc etc. That means you write one program, and you target almost everybody as a potential clinet.
Another benefit is its extreme power and ease of use. You dont have to write all that shitty code in capital if you know what i mean, that just wastes time and has no programming benefit.
The hello world example (compare this code to the MFC hellow world adn you'll be convinced :))

#include <qapplication.h>
#include <qlabel.h>

int main(int argc,char **argv)
{
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
XTermCommented:
Ow, Sorry, I was copying some files, and my system gets very laggy then, accidents happen
Here is the example...

#include <qapplication.h>
#include <qlabel.h>

int main(int argc,char **argv)
{  
   QApplication *app = new QApplication(argc,argv);
   QLabel *l = new QLabel("Hello world",0,0);
   app->setMainWidget(l);
   l->show();
   app->exec();
   delete app();
   return(0);
}

Voila that's it. KDE has a wonderfull program named KDevelop, it's an C++ IDE that I believe is better than the VC++6 IDE. Qt 's events are handeld through signals and slots. For example you can connect a button's click signal to a function. It's done with one line of code. Very easy. Qt comes with excellent documentation in HTML or PDF.

www.trolltech.com

Cheers
0
 
XTermCommented:
One must-have C++ book is "The C++ Programming Language" from Bjarne Stroustrup. The one I got is from Addison Wesley. An excellent book, but not intended for newbies.
For Qt I got "Qt programming for Linux and Windows 2000" from Patrick Ward, Published by Hewlett Packard??Professional Books.

Cheers again
0
 
zxcvzxcvAuthor Commented:
thank you very much!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now