Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Good C++ Book

Posted on 2001-07-28
6
Medium Priority
?
233 Views
Last Modified: 2010-04-21
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
Comment
Question by:zxcvzxcv
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
6 Comments
 
LVL 2

Expert Comment

by:XTerm
ID: 6331181
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
 
LVL 1

Author Comment

by:zxcvzxcv
ID: 6332218
To run certain KDE apps I've noticed that I needed to get certain QT versions, and libraries, what exactly is QT?
0
 
LVL 2

Accepted Solution

by:
XTerm earned 100 total points
ID: 6333489
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
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
LVL 2

Expert Comment

by:XTerm
ID: 6333521
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
 
LVL 2

Expert Comment

by:XTerm
ID: 6333538
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
 
LVL 1

Author Comment

by:zxcvzxcv
ID: 6336732
thank you very much!
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The purpose of this article is to fix the unknown display problem in Linux Mint operating system. After installing the OS if you see Display monitor is not recognized then we can install "MESA" utilities to fix this problem or we can install additio…
The purpose of this article is to demonstrate how we can upgrade Python from version 2.7.6 to Python 2.7.10 on the Linux Mint operating system. I am using an Oracle Virtual Box where I have installed Linux Mint operating system version 17.2. Once yo…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
Suggested Courses

598 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question