Solved

Good C++ open-source software

Posted on 2000-02-15
22
253 Views
Last Modified: 2012-05-04
Hi, I haven't been using C++ for couple of years and now am used to Java too much, but now have to make an application in C++.

Could someone tell me about a good C++ model software which

- sources are available
- not gigantic
- OO-designed
- using later techniques like
  - Exception
  - STL
  - string
- work both in Unix and Windows

networking application is preferred and  GUI feature is unnecessary.

Thanks in advance,
0
Comment
Question by:akky032499
  • 8
  • 8
  • 3
  • +2
22 Comments
 
LVL 14

Expert Comment

by:AlexVirochovsky
ID: 2523779
See www.codeguru.com with many,many
good codes.
0
 
LVL 3

Expert Comment

by:dalehend
ID: 2524235
Here is a C++ cross-platform framework:
www.wxWindows.org
It has all the features you requested.
0
 

Author Comment

by:akky032499
ID: 2525705
Alex, many apps I took from codeguru seemed to use C++ just as a bit enhanced C. Could you point me one single app using latest C++ tech from them? I know many good applications which carefully avoid to use newer C++ language features. But I'd like to try them, know them and need good samples.

dalehend, I did quick look at wxWindows sources. it seems a good framework though,
  - it is gigantic, not essential
  - it uses neither of Exception, STL nor string
I felt it was more practical software than elegant. (no offence. I understand why they don't use those unstable, uncommon new language features.)

Thank you for your help, however, I'm looking for something to match my requirement better. Now I'm going to give up another OS, so SunOS5 and NT are enough. Is there any?
0
 
LVL 14

Expert Comment

by:AlexVirochovsky
ID: 2525749
In codeguru there are many Apps for some
concrete target: communication, internet, bitmap,...
Simple to use all newest C++ possibilities? In one project? I tray
to search, but usually all my examples
use someone specific. I have full BC
C++ examples, but it is same : every example demonstrates some feather of
C++/OWL/MFC...
0
 
LVL 11

Expert Comment

by:alexo
ID: 2525921
CodeGuru is very MFC oriented.

Will an STL source fit the bill?
http://www.stlport.org
0
 
LVL 3

Expert Comment

by:dalehend
ID: 2527026
I thought the compiler has to support string, exceptions and STL, not the framework. I use Mingw32 which does all of the above. (I am the manager of the discussion group, www.egroups.com/groups/mingw32.
Secondly, wxWindows is a library of components so just take what you need so to speak.
0
 
LVL 11

Expert Comment

by:alexo
ID: 2527453
Exceptions are part of the C++ language so the compiler has to support them.

The STL and std::string are parts of the C++ standard library and are commonly implemented as include files.  However, the compiler has to support certain features of the C++ langage in order to enable full functionality of the standard library.

As Mingw32 is based on gcc, it's level of conformance to the C++ standard is much higher than Microsoft's VC++ so it supports more features of the standard library.

(on the other hand, VC++ generates faster code on Win32 platforms due to a better optimizer)
0
 

Author Comment

by:akky032499
ID: 2529447
Adjusted points to 100
0
 

Author Comment

by:akky032499
ID: 2529448
I raise points.

Sorry if I made you confused. I don't need any STL/string implementation. What I want to see is a tidy example which is using those exception and standard library features. (wxWindows code seems to use none of them.)

That program must be neither too much nor too little. means bigger than snippet on books, small enough to be able to read through.

My SunCC and VC++ support exception/STL/string. I would like to know how to use them in elegant way.
0
 
LVL 11

Expert Comment

by:alexo
ID: 2530465
0
 

Author Comment

by:akky032499
ID: 2530580
Overly enough. I have to take and check those libraries from your links one by one. I have been going through with more than 20 libraries now. I'm suspecting almost all products on your lists use neither STL nor exception.

When I asked this question I thought that someone here knows the good one and points it out to me. One is enough...
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 11

Expert Comment

by:alexo
ID: 2531647
Some of them are extensions to the STL and as such use exceptions and (possibly) STL objects.

Why don't you tell us exactly *why* do you want it.  There are better ways of familiarizibg yourself with exceptions and the STL than reading source code.
0
 
LVL 3

Expert Comment

by:dalehend
ID: 2531724
If you check out the CVS sources for wxWindows, they are putting together an IDE called wxStudio. Its sources are using STL( I found out by having to upgrade the Mingw32 compiler I was using to the latest).
0
 

Expert Comment

by:Zarathustra
ID: 2532171
I like this one:
http://www.cs.wustl.edu/~schmidt/ACE.html

The ACE-Framework is extremely platform independant, uses software patterns extensively, and is one of the most sophisticated pieces of code I ever ran into. It's large, but rather well documented and free.
0
 

Author Comment

by:akky032499
ID: 2533542
>Why don't you tell us exactly *why*
>do you want it.

Well, I want to know how to design/write an application in C++ as like I did in Java. Means, not returnCode-nestedIf-way but try-catch way, not inventing wheel again but using system built-in collection libraries.

I tried some books but they only explain language grammer and small code. They didn't tell me, for example,  how exception class layers should be designed and used in a whole application.

>There are better ways of                  
>familiarizibg yourself with exceptions
>and the STL than reading source code.

So I might need to know a better book which is intended for that purpose and which I don't know yet, besides trying to mimic other code. Are there?

Zarathustra, thanks, I looked. ACE seems to use exceptions but in very restricted places. And they say ACE is with less exceptions to match with many different compilers which may not support exceptions. Exception handlings are defined by macros and not widely used. Anyway I'm feeling I can learn some from it.
0
 
LVL 11

Accepted Solution

by:
alexo earned 100 total points
ID: 2535295
I heard that "industrial strength c++" is very informative.
0
 

Author Comment

by:akky032499
ID: 2554192
It seems to take much time for me to get the book in my hands. I'll try it.
Thanks alexo and all.
0
 
LVL 11

Expert Comment

by:alexo
ID: 2561299
One thing akky.
I prefer not to get points for a question AT ALL than to get a 'C' grade.  In the future, please do not accept my comments as answers unless you feel that they are REALLY helpful.  Thank you.
0
 

Author Comment

by:akky032499
ID: 2561916
Sorry alexo, you could have written it beforehandly in your comment or your profile.

I had thought I had to use grade C when I'm not satisfied. If Everyone avoids it for being friendly(?), grading system won't work.
0
 
LVL 11

Expert Comment

by:alexo
ID: 2562163
>> Sorry alexo, you could have written it beforehandly in your comment or your profile.

Most of the experts here share this opinion.

>> I had thought I had to use grade C when I'm not satisfied.

Not really.  You don't *have* to do anything.  You may assign any grade you like, reject an answer or even delete the question and reclaim your points.

>> If Everyone avoids it for being friendly(?), grading system won't work.

While this is true in principle, sometimes people specifically submit _comments_ instead of _answers_ as an attempt to say "Here is my opinion.  I don't claim it to be an answer to your problem but it may be of some help."

When a person submits an _answer_, grading (or rejecting) is expected.  When a _comment_ is given - it is not.  In fact, the ability to accept a comment as an answer is a recent addition to EE. Consider the fact that a question may have numerous comments.  Why would the most helpful suffer the penalty of a bad grade?

Sometimes (fairly often) I see a question to which I have no answer but can somehow contribute to the discussion.  If I were to suspect that I may get a bad grade (which is visible on my last 10 and, since I'm not very active here lately, will take a while to disappear), I would refrain from giving a (possibly helpful) advice.  No one would benefit.
0
 

Author Comment

by:akky032499
ID: 2562184
I see your point. I will not do it again.

It seems to be unable to take back my grading for this item. Could I do something to recover your grade?

I imagine there are no way. Probably ths system needs another option "add comment without an accept-as-answer button" for you and most experts.
0
 
LVL 11

Expert Comment

by:alexo
ID: 2566419
>> Could I do something to recover your grade?
Nope.  Water under the bridge...

0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Introduction This article is the first in a series of articles about the C/C++ Visual Studio Express debugger.  It provides a quick start guide in using the debugger. Part 2 focuses on additional topics in breakpoints.  Lastly, Part 3 focuses on th…
This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The goal of the video will be to teach the user the difference and consequence of passing data by value vs passing data by reference in C++. An example of passing data by value as well as an example of passing data by reference will be be given. Bot…

744 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now