[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.c++

C++ Advise

Allonii

11/18/2008 11:54:00 AM

Hello!

I’m new to this forum and in need of some advice.

I have learned the basics of java in the school as I’m studying
computer science. I would rather learn C++ though.
You can create windows applications, games, Linux applications, its
faster, more power etc.
And you get a nice .exe file when you compile in windows. (Which java
lacks)

I have already started to read an C++ book and I’m half way through,
but when it comes to GUI applications I have some
questions I would like to clear out.

As I understand it C++ doesn’t provide a GUI library. But then we have
Windows API and Visualc++. So my questions are.


Windows API and VisualC++ they don't seem to be using the same
library? Windows API is it too old to be using today?
I know that in VisualC++ you can just copy and paste in the design
mode to get a button but in WinAPI its lines of code.

And another problem is that many C++ books don't even mention the GUI.
Don't even know if there are books about it.
Are there more libraries that one should be aware of?


In other hand C++ is an "old" language compared to java, C#, VB but
it’s still is the most powerful one (my opinion).


Thanks in advance



19 Answers

maverik

11/18/2008 12:29:00 PM

0

On Nov 18, 2:53 pm, Allonii <allo...@hotmail.com> wrote:
> Hello!
>
> I’m new to this forum and in need of some advice.
>
> I have learned the basics of java in the school as I’m studying
> computer science. I would rather learn C++ though.
> You can create windows applications, games, Linux applications, its
> faster, more power etc.
> And you get a nice .exe file when you compile in windows. (Which java
> lacks)
>
> I have already started to read an C++ book and I’m half way through,
> but when it comes to GUI applications I have some
> questions I would like to clear out.
>
> As I understand it C++ doesn’t provide a GUI library.

Yes, the language doesn’t provide a GUI library.

> But then we have
> Windows API and Visualc++. So my questions are.

Please go to the comp.os.ms-windows.programmer.win32 or like this.

> Windows API and VisualC++ they don't seem to be using the same
> library? Windows API is it too old to be using today?

False. It depends on your task.

> I know that in VisualC++ you can just copy and paste in the design
> mode to get a button but in WinAPI its lines of code.
>
> And another problem is that many C++ books don't even mention the GUI.

Probably you need book about GUI programming (as I understand, for
Windows) not book about C++.

> In other hand C++ is an "old" language compared to java, C#, VB but
> it’s still is the most powerful one (my opinion).

Hmmm. What's mean powerful? Again, it depends on your needs. Sometime
it is powerfull. Sometimes not.

Allonii

11/18/2008 12:40:00 PM

0

> False. It depends on your task.

Well my goal is atm to create simple windows application.

> Probably you need book about GUI programming (as I understand, for
> Windows) not book about C++.

But then a programming language is needed.
Do you recommend any GUI programming books for windows?

> Hmmm. What's mean powerful? Again, it depends on your needs. Sometime
> it is powerfull. Sometimes not.

my needs atm are for now win applications. The good part about C++ is
that you
can use it to alot of things. For example

>windows applications, games, Linux applications, its
>faster, more power etc.

osmium

11/18/2008 1:29:00 PM

0

"Allonii" wrote:

>> Probably you need book about GUI programming (as I understand, for
>> Windows) not book about C++.
>
> But then a programming language is needed.
> Do you recommend any GUI programming books for windows?

The bible for GUI on Windows is _Programming Windows_ by Charles Petzold, it
is very well written. There are several editions of this book which kind of
track the evolution of Windows. I have heard, but not verified, that some
of the most recent editions might not be what you want. Microsoft has tried
several things to make GUI "more manageable" , for lack of a better term.
The drag and drop you mention is part of this. The Petzold series, at least
until recently, has been for hard core programmers. Microsoft keeps
floundering around searching for a silver bullet, the latest experiment is
called .NET.


Allonii

11/18/2008 1:52:00 PM

0

> The bible for GUI on Windows is _Programming Windows_ by Charles Petzold, it
> is very well written.  There are several editions of this book which kind of
> track the evolution of Windows.  I have heard, but not verified, that some
> of the most recent editions might not be what you want.  Microsoft has tried
> several things to make GUI "more manageable" , for lack of a better term.
> The drag and drop you mention is part of this.  The Petzold series, at least
> until recently, has been for hard core programmers.

Thanks
But is the book up to date? its from 1998..

So in this case the Windows API is too advanced and the VisualC++
would be the "easy part".
But then do it use the same library? Because when you open an win API
code its not so easy to understand.


> Microsoft keeps floundering around searching for a silver bullet, the latest experiment is
> called .NET.

I understand. But in other hand the API is old?

Tim Slattery

11/18/2008 2:19:00 PM

0

Allonii <allonii@hotmail.com> wrote:


>Windows API and VisualC++ they don't seem to be using the same
>library? Windows API is it too old to be using today?
>I know that in VisualC++ you can just copy and paste in the design
>mode to get a button but in WinAPI its lines of code.

Visual C++ is Microsoft's implementation of the C++ language. The
Windows API comprises the functions built in to Windows that you
*must* use to write a Windows application. You're probably seeing code
written using MFC (Microsoft Foundation Classes), a set of classes
that comes with VC++ that wrap many of the API functions and make
writing Windows applications easier.

The proper place to ask questions about writing Windows apps is the
microsoft.public.vc.* hierarchy.

--
Tim Slattery
Slattery_T@bls.gov
http://members.cox.net...

osmium

11/18/2008 2:49:00 PM

0

"Allonii" wrote:

>I understand. But in other hand the API is old?

The API evolves, yes its origins are old, 1987 or so.You seem to be hung up
on the age of things and equate newness with goodness. IMO there is often a
negative correlation. I suggest you transfer your questions to some of the
other newsgroups proposed. And drop the flame inducing talk of other
languages, such talk can only lead to tangents. And God knows, tangents are
the fresh meat of Usenet - they waste thousands of man hours per day. And,
yes, woman hours as well.


Andreas Duffner

11/18/2008 3:09:00 PM

0

Hello,

Allonii wrote:
> As I understand it C++ doesn?t provide a GUI library. But then we have
> Windows API and Visualc++. So my questions are.

If you do not have a special reason to go for the Windows API, I'd
suggest that you learn some ClassLibrary, which is easier to use.
For example Qt ( http://trolltech.com/produ... ) or Gtk.
I am using Qt since years, sometimes developing under Windows,
sometimes under Linux, sometimes for the Mac.
I do not care. Qt does it all.
Example:
int main(int nArgCount, char** ppSzArgs)
{
QApplication app(nArgCount, ppszArgs);
QPushButton button("Press me");
connect(&button, SIGNAL(clicked() ),
&app, SLOT(quit() ) );
return app.exec();
}

This would create a button, complete with event loop, text, clickable.
And if you click it, it will send a message to the application
which will end the queue...
Same Sourcecode for all platforms.

Building ?
- qmake
- make
done.

Just a suggestion.
Andreas

Pete Becker

11/18/2008 3:09:00 PM

0

On 2008-11-18 09:18:44 -0500, Tim Slattery <Slattery_T@bls.gov> said:

> Allonii <allonii@hotmail.com> wrote:
>
>
>> Windows API and VisualC++ they don't seem to be using the same
>> library? Windows API is it too old to be using today?
>> I know that in VisualC++ you can just copy and paste in the design
>> mode to get a button but in WinAPI its lines of code.
>
> Visual C++ is Microsoft's implementation of the C++ language. The
> Windows API comprises the functions built in to Windows that you
> *must* use to write a Windows application.

Only if "WIndows application" means windowing application, as distinct
from "applicatton that runs on Windows". You don't need any of the
Windows API to write a standard-conforming C++ application (i.e an
application that runs from the command line).

--
Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com) Author of "The
Standard C++ Library Extensions: a Tutorial and Reference
(www.petebecker.com/tr1book)

Boris

11/18/2008 3:24:00 PM

0

On Tue, 18 Nov 2008 12:53:48 +0100, Allonii <allonii@hotmail.com> wrote:

> [...]Windows API and VisualC++ they don't seem to be using the same
> library? Windows API is it too old to be using today?
> I know that in VisualC++ you can just copy and paste in the design
> mode to get a button but in WinAPI its lines of code.
>
> And another problem is that many C++ books don't even mention the GUI.
> Don't even know if there are books about it.
> Are there more libraries that one should be aware of?

Another idea is to separate components and use the most suitable language
to implement them. If you need speed for example you could create a native
Windows DLL in C++. If you need a GUI you could use the .NET platform and
create a .NET executable (for example with C++/CLI if you prefer to use
something similar to C++) which can access the native Windows DLL. That
way you are not stuck in a certain language but can choose whatever is
best.

Boris

Tim Slattery

11/18/2008 5:29:00 PM

0

Pete Becker <pete@versatilecoding.com> wrote:

>Only if "WIndows application" means windowing application, as distinct
>from "applicatton that runs on Windows". You don't need any of the
>Windows API to write a standard-conforming C++ application (i.e an
>application that runs from the command line).

Agreed, you can write a command-line app for windows using only
standard C++, no Windows API call involved. You do have to use the API
for a GUI application.

--
Tim Slattery
Slattery_T@bls.gov
http://members.cox.net...