HDTenEightyP/NetNews huggingface dataset:
From: warwick@cs.uq.oz.au (Warwick Allison)
Newsgroups: comp.lang.c++
Subject: Re: Cricket Program
Keywords: Can't compile it.
Date: 7 Apr 92 04:42:36 GMT
Reply-To: warwick@cs.uq.oz.au

In <850347s.702592893@aucs> 850347s@aucs.acadiau.ca (Hume Smith) writes:

>cobra@chopin.udel.edu (Jay Bhartkumar Patel) writes:

>>I got this program from someone and  I can't compile it. 
>>I typed in CC crip.cc.  Can someone tell me what is wrong with this program.  

>it might work better to type csh crip.cc.  that's csh and awk code.


I tried that, but it said:

Bad command or filename
C:\>



--
Warwick
--
  _-_|\      warwick@cs.uq.oz.au            / pinots pintos /
 /     * <-- Computer Science Department,  / piston pitons /
 \_.-._/     University of Queensland,    / points potins /
      v      Brisbane, Australia.        / ------ ------ /
From: checker@acf3.nyu.edu (Christopher Hecker)
Newsgroups: comp.lang.c++
Subject: Re: Call by reference using * and &
Date: 16 Apr 92 22:02:43 GMT
Article-I.D.: cmcl2.1992Apr16.220243.16194
Organization: New York University


I think the point here is that, at some point, you have to dereference a
NULL pointer to get a 'NULL reference.'  So, if you stick with the original
assumption that any code dealing with pointers has checked for a NULL
pointer, you are safe.  Of course, you can always check everything for
anything that might be wrong, but that isn't going to be appropriate for
most programs.

Chris
From: bimor@cs.few.eur.nl (Jeroen Morrien)
Newsgroups: comp.lang.c++
Subject: c++ classes library
Summary: in need for standard windows library for c++
Keywords: c++, windows, library, classes
Date: 8 Apr 92 18:22:27 GMT
Organization: Erasmus Universiteit Rotterdam

With this message I want to be informed if anybody knows how I
 can obtain a library of window classes for Borland Turbo C++.

These classes should make up a basis for forming an user interface.

If anybody knows if such "classes" can be obtained via an anonymous
 ftp-site, please send the adress to my personal mail-adress or post
 a reply into netnews. Another way would be that the reader has al-
 ready a library of her/himself, if so, I would appreciate it that
 the reader would suggest a way to send the source code to my the   
 writer (e-mail...).

J.Morrien, Rotterdam-The Netherlands-Europe, 920408.

E-mail: bimor@cs.few.eur.nl
or    : bimor@sus.eur.nl
Newsgroups: comp.lang.c++
From: pete@borland.com (Pete Becker)
Subject: Re: Borland's design decisions
Organization: Borland International
Date: Wed, 8 Apr 1992 00:33:00 GMT

In article <1992Apr2.131624.245@pictel.com> boba@pictel.com (Bob Alexander) writes:
>Secondly, Borland extended C++ with dynamic dispatch virtual tables.  Why?
>Why not just just create virtual member functions like WMLButtonDown that
>always receive a particular message and that the user can override?  What
>do DDVTs add that is so worthwhile as to justify a non-standard extension
>to C++?
>

	You could create a base class that responded to every possible Windows
message, but you'd have to provide 64K identical functions, each calling
DefWindowProc().  Then your derived class could override the ones that were
appropriate.  Now you've got two rather large vtables...
	-- Pete

Newsgroups: comp.lang.c++
From: carter@iscnvx.lmsc.lockheed.com (Mark R. Carter)
Subject: Re: need phone # for ParcPlace (others?)
Organization: Lockheed Missiles and Space Co.
Distribution: na
Date: Thu, 9 Apr 92 01:20:11 GMT

	ParcPlace Systems
	1550 Plymouth Street
	Mountain View, California 94043
	(415)691-6700

				Mark R. Carter, Ph.D
				Lockheed Missiles & Space Co.
Newsgroups: comp.lang.c++
From: shahriar@island.island.COM (Shahriar Vaghar)
Subject: NIH / ET++ class libs
Organization: Island Graphics Corp.
Date: Thu, 9 Apr 1992 01:03:47 GMT

I am looking for latest versions of National Inst. of Health (NIH) 
class library & ET++ applicaiton framework.
Please direct me to the right site to download these libraries.

How about documentation?

Thanks
From: joe@proto.com (Joe Huffman)
Newsgroups: comp.lang.c++
Subject: Re: Microsoft c/c++ 7.0
Keywords: Need more info
Date: 15 Apr 92 08:17:21 GMT
Organization: Prototronics @ Sandpoint, Idaho

dmitry@conan.UUCP (Dmitry Gringauz) writes:

>I need more information on Microsoft c/c++ 7.0.  What version of c++ does
>it conform to (2.0, 2.1?).  Can it produce executables for dos,  and 
>does it have a built-in dos extender?   The ads say that "Qualitas 386max"

The compiler itself runs only on '386 and above computers.  It is a DOS
extended 32-bit app.  According to the people I talked to at SD '92 in
late February, it does not generate 32-bit code and it does not include
a DOS extender.

>PS.  I've seen the mention of another company (Zortech, Watcom??) offering
>a similar "upgrade" package as Microsoft.  What is that company, and what
>are the terms of an upgrade.  I am obviously shopping for a good c++
>compiler w/windows and dos extender support.

Currently the only commercial C++ compiler that supports 32-bit DOS 
extenders is Zortech (that I know of).  286 DOS extender support exists
for Zortech, Borland (through Phar Lap's 286 extender and I believe others),
JPI (Topspeed C/C++), probably others.  Zortech's Windows support has a
reputation of being a bit weak compared to Borland and Microsoft (I don't
program for Windows can't comment with authority).

Watcom and Metaware have both announced support for 32-bit DOS extended C++ 
is on the way.  I expect by the end of the year there will be at least three
and possibly as many as six compilers supporting 32-bit DOS extended C++ 
(Joe's one great prediction for '92 :-).
-- 
uunet!proto!joe
joe@proto.com
From: freeman@gradient.cis.upenn.edu (Jon Freeman)
Newsgroups: comp.lang.c++
Subject: ObjectCenter
Date: 16 Apr 92 18:55:30 GMT
Organization: University of Pennsylvania

I have a question about ObjectCenter (formerly Saber C++).  I
understand that ObjectCenter stores its cross-referencing information
in main memory, and as a result one's machine will thrash and die when
the project in question exceeds a certain size.  I would like more
specific information, however.  Exactly how big can a project get
before ObjectCenter strangles the machine?  What's a decent amount of
memory to have to minimize this problem?

				Thanks,
				 Jon
				 (freeman@gradient.cis.upenn.edu)
From: speno@clam.rutgers.edu (John P. Speno)
Newsgroups: comp.lang.c++
Subject: Re: C++ as a 1st programming language ?
Date: 14 Apr 92 23:41:40 GMT
Organization: Rutgers Univ., New Brunswick, N.J.


 
	I just bought _The C++ Primer Plus_ by Stephen Prata for
$26.95.  The book assumes no knowledge of C and teaches OOP in C++
from the ground up. It's 720 pages and is very easy to read and learn
from.
-- 
========================+======================================================
John P. Speno		| "If you lose a wager to the King of the Sea,	
Souless Student		|	you'll spend the rest of forever in the cage
speno@clam.rutgers.edu	|		with me." - Sting. The Soul Cages.
========================+======================================================
VOTE FOR REN & STIMPY -- THE HAPPY HAPPY JOY JOY TICKET -- REN & STIMY IN '92!
Newsgroups: comp.lang.c++
From: cox@cbnewsm.cb.att.com (michael.cox)
Subject: Re: Reference for Object Identification?
Organization: AT&T
Distribution: usa
Date: Wed, 15 Apr 1992 20:52:29 GMT

In article <rmartin.703296060@willing> rmartin@willing.Rational.COM (Bob Martin) writes:
>You will find Stroustup`s proposal for "Run-time type information" in
>section 13.5 of "The C++ Programming Langauge" Second Edition.
>
>Stroustrup has also an article in the March/April C++ Report which
>discusses the same subject....

Note that the proposal in the C++ Report is NOT the same as the proposal
in the Second Edition.  The latest proposal requires actual changes to the
compiler, where as the Second Edition version didn't seem to require
compiler changes.

Anyone know the status of the latest proposal?  Will ANSI C++ have some
sort of standard run-time type identification?

-- 

==========================================================================
Michael H. Cox			ARPA:  cox@garage.nj.att.com
AT&T Bell Labs			UUCP:  ihnp4!edsel!cox
From: immel@flash.uucp (Mark Immel)
Newsgroups: comp.lang.c++
Subject: BC++ Classes
Date: 8 Apr 92 02:20:02 GMT
Article-I.D.: das.1992Apr8.022002.19252
Organization: Aiken Computation Lab, Harvard University

Does anybody know how the container classes packaged with BC++ 3.0
allocate memory under Windows?  In particular, do they still use
pointers, or handles?  I'm worried that these classes may allocate
memory that Windows can't move around or swap out to disk...

Thanks,

Mark Immel
immel@das.harvard.edu
Newsgroups: comp.lang.c++
From: lar@netcom.com (Larry Foshee)
Subject: Class Libraries for Time and Date
Date: Mon, 13 Apr 92 21:06:03 GMT
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
Keywords: Time Date

Does anyone know of a class library with comprehensive time and date
functions?  I need a relatively inexpensive solution.  Thanks,

Larry
-- 
Lar  deFosh   lar@netcom.com   cell #142

Newsgroups: comp.lang.c++
From: matthew@syacus.acus.oz.au (Matthew Smith)
Subject: unix C++ tools
Organization: ACUS Australian Centre for Unisys Software, Sydney
Date: Tue, 7 Apr 1992 03:44:13 GMT

G'day Netters!

We are looking at C++ programming enviroments (or a set of tools)
with the following properties:
	1)	AT&T 2.1 compatible
	2)	profiler - how many times each line of code was executed
	3)	memory tracer (run time) to signal
		a)	which memory objects were allocated and not released
			(and from which line of source code the request came)
		b)	when an attempt to use (read/write) memory outside
			allocated bounds is made
	4)	the tools should work on UNIX SystemV release 3 and 4
		with no native windowing systems (character terminals)
		(possible use of PC-based X-windows).

What do you use?  If there are any answers, I'll summarise.
matt.
--
Matt Smith                         ACUS - Australian Centre for Unisys Software
matthew@syacus.acus.oz.au                 115 Wicks Rd,
ph:  +61 2 390-1375                       North Ryde,
fax: +61 2 390-1391                       Australia.
Newsgroups: comp.lang.c++
From: sjb@cs.toronto.edu (Stephen Bellantoni)
Subject: Re: tree iterator, how?
Reply-To: sjb@cs.toronto.edu
Organization: Department of Computer Science, University of Toronto
Date: 14 Apr 92 22:56:59 GMT

rjm@cs.brown.edu (Ralph Marshall) writes:

>In article dmh@goanna.cs.rmit.oz.au (Darren Hosking) writes:
>>I've got a simple binary tree class that I'd like to iterate through with
>>an iterator class. Each node of the tree maintains data and a left and right
>>node pointer. How can I write an iterator class for the tree class?
>>

>It depends on what you have in mind for the iterator to do. ...
>... My solution is
>to have a "cursor" which points to a single node in the tree, and
>various operations which allow you to move the cursor (such as next,
>previous, first, last, search, etc.) 

You will need pointers to the parent nodes. I assume you want to 
do a depth-first iteration. 
I suggest that you use exactly the operations which are present in
your container/iterator classes for, say, a singly linked list. This
would include say initIterator(), operator++, operator--, operator->.
In addition, put four member functions in the iterator class: 
    Boolean Iterator::IsPrevisit(), 
    Boolean Iterator::IsInfix()
    Boolean Iterator::IsPostvisit()
    Boolean Iterator::IsLeaf()
For a tree of height two (one root, two middle nodes, four leaves) the
iteration goes like this:
    root                            IsPrevisit == True (others are false)
    left child                      IsPrevisit == True ( " )
    left leaf of left child         IsLeaf == True     ( " )
    left child                      IsInfix == True    ( " )
    right leaf of left child        IsLeaf  == True    ( " )
    left child                      IsPostvisit == True  ( " )
    root                            IsInfix     == True  ( " )
    right child                     IsPrevisit  == True  ( " )
	etc
In this way the four flags give a "direction" in which the current 
iteration is proceeding. You use these in your iteration loop to 
perform different types of actions:
	for (it=initIterator(); it != 0; it++) {
		if (it.IsLeaf()) {
			push(it->u.value);
		} else if (it.IsPostVisit()) {
			arg2 = pop();
			arg1 = pop();
			push( perform(it->u.operation, arg1, arg2) );
		}
	}
In the example iteration above, there are a lot of times in which the loop
body executes but neither of the if cases are taken -- for example in
previsits and infix visits. This doesn't really present an efficiency issue
with proper inlining and code optimization since you have to perform these
steps anyways in traversing your links. But in some tree representations (such
as a binary tree stored in an array) it does cost you a bit. To fix this, you
can add an optional argument to initIterator() saying which visits are used in
the loop body. Then in operator++, just skip over the unwanted visits.

stephen bellantoni
From: djones@megatest.UUCP (Dave Jones)
Newsgroups: comp.lang.c++
Subject: Demangler?
Date: 14 Apr 92 22:02:49 GMT
Organization: Megatest Corporation, San Jose, Ca

Is there a PD demangler available? In particular I would be interested
in one that de-mangles names as mangled by cfront, or more specifically
by ObjectCenter's version of cfront.
Newsgroups: comp.lang.c++
From: ajrooks@vlsi.waterloo.edu (Alan Rooks)
Subject: Email address for Glockenspiel
Organization: University of Waterloo
Date: Wed, 8 Apr 1992 17:45:56 GMT

I believe that Glockenspiel is on the net, with a machine named glock.
Does anyone know the address of this machine?  How about a userid on
it (other than postmaster!) for getting info?

Thanks in advance.

Alan Rooks	University of Waterloo		ajrooks@vlsi.waterloo.edu
Newsgroups: comp.lang.c++
From: jimad@microsoft.com (Jim ADCOCK)
Subject: Re: The C++ Matrix class
Date: 10 Apr 92 17:20:25 GMT
Organization: Microsoft Corp.
Keywords: C++ Matrix class solver inner product diagonal matrices tensors

In article <1992Apr3.044848.4273@cs.ucla.edu> edwin@maui.cs.ucla.edu (Edwin Tisdale) writes and
>In article <1992Apr2.151847.11196@ux1.cso.uiuc.edu> >hmiller@osiris (Harry Miller) writes about mat solvers.  Etc. Consider:-)



extern "C"
{
	#include "stdio.h"
}

class Mat;
class Vec;
class Prod;
typedef int bool;
#define self (*this)

bool Solve(const Mat& a, Vec& x, const Vec& b);

class Mat
{
	friend Vec;
	friend Prod;
	friend bool Solve(const Mat& a, Vec& x, const Vec& b);
	char name;
public:
	Mat(char n) : name(n) {} 
	Mat(const Mat& m)  : name('M') {} 
	Prod operator*(Vec& v) const; 
	Vec mpy(const Vec& v) const;
}; 

class Vec { 
	friend Mat; 
	friend Prod;
	friend bool Solve(const Mat& a, Vec& x, const Vec& b);
	char name;
public:
	Vec() : name('V') {}
	Vec(char n) : name(n) {} 
	Vec(const Vec& v)  : name('V') {} 
	const Vec& operator=(const Prod& r);
	const Vec& operator=(const Vec& v) { return self; }
};

class Prod
{
	friend Mat;
	friend Vec;
	const Mat& mr;
	Vec& vr;
public:
	Prod(const Mat& m, Vec& v) : mr(m), vr(v) {}
	Prod(const Prod& p) : mr(p.mr), vr(p.vr) {}
	bool operator=(const Vec& v);
};

bool Solve(const Mat& a, Vec& x, const Vec& b)
{
	printf("Solve %c * %c = %c\n", int(a.name), int(x.name), int(b.name));
	return bool(1); // assumings it succeeds ;-)
}

const Vec& Vec::operator=(const Prod& r) 
{ 
	self = r.mr.mpy(r.vr); 
	return self; 
}

Prod Mat::operator*(Vec& v) const
{
	return Prod(self, v);
}

Vec Mat::mpy(const Vec& v) const
{
	printf("multiply %c * %c\n", int(self.name), int(v.name));
	return Vec();
}

bool Prod::operator=(const Vec& v)
{
	return Solve(mr, vr, v);
}

main()
{
	Mat a('a');
	Vec x('x'), b('b');

	b = a * x;

	a * x = b;

	return 0;
}
From: jbn@lulea.trab.se (Johan Bengtsson)
Newsgroups: comp.lang.c++
Subject: Re: Borland's design decisions
Date: 13 Apr 92 12:28:52 GMT
Organization: Telia Research AB, Aurorum 6, 951 75 Lulea, Sweden

strider@concour.cs.concordia.ca (GEORGAKAKIS peter) writes:
: 
: I view iterators as objects that maintain currency on a collection and
: tell the collection what what current element they are pointing to
: when queried by the collection.  Furthermore collections know what
: iterators are iterating over them and can properly adjust the
: iterators when necessary (that is when the collection is modified).

This will (should) not work with const collections.  Someone suggested
using both iterators and "manipulators", that are iterators with
insert/remove operations.

-- 
--------------------------------------------------------------------------
| Johan Bengtsson, Telia Research AB, Aurorum 6, S-951 75 Lulea, Sweden  |
| Johan.Bengtsson@lulea.trab.se; Voice:(+46)92075471; Fax:(+46)92075490  |
--------------------------------------------------------------------------
From: jrives@tridom.uucp (Joel Rives)
Newsgroups: comp.lang.c++
Subject: Process Independant Objects
Date: 14 Apr 92 15:57:20 GMT
Reply-To: jrives@tridom.uucp (Joel Rives)
Organization: AT&T Tridom; Marietta, Georgia

I would like to open up a discussion of what i prefer to call "Process Independant Objects" in C++. By this, i mean objects which can be referenced across process boundaries. This implies -- amoung other things -- the ability to invoke methods on an object which was instantiated in another process. Thus, given:

    class Foo
    {
        public:
	    void doSomething ();
    };

    class FooRef;  // a reference to an instance of class Foo

Process #1 creates an instance of class Foo:

    main ()
    {	
	  ...

        Foo  foo;

          ... 
    }

Through some unspecified means, Process #2 receives a reference to the instance of class Foo instantiated in Process #1. The following should then be possible:

    main ()
    {
	...

	FooRef  fr;
	fr.doSomething ();

	...
    }

If anyone has any ideas along these lines,lease pipe up. 


-- 
-------
Joel M. Rives                           INTERNET: jrives@eng.tridom.com
O-O Analysis, Design & Implementation   UUCP:     joel@ad.UUCP      
Avalon Designs, Inc.                    VOICE:    (404) 514-3398 
Consulting with  AT&T Tridom                      (404) 377-9415
-------
Newsgroups: comp.lang.c++,comp.std.c++
From: dougm@cns.caltech.edu (Doug McNought)
Subject: Re: Call by reference using * and &
Organization: California Institute of Technology
Date: Tue, 14 Apr 1992 13:32:16 GMT

In article <1992Apr13.214311.24013@saifr00.cfsat.honeywell.com> lam@saifr00.cfsat.honeywell.com (Josh Lam) writes:

   In C++, call by reference can be accomplished using pointers (like in C) or
   by reference (&).  Question:  What are some advantages of using references

 [deleted]

   The couple of advantages (at least from my limited experiences with C++) of
   using the reference method over the pointer method are:

   1)  It provides a cleaner interface into the function, makes it a little 
       easier to read and to use

   2)  The programmer does not have to worry about the address of the pointer,
       makes it a little easier to program

Some people don't like using references for this purpose, since when reading
the code it is not immediately obvious from the form of the function call that
a variable might be changed by the function. With the address passed explicitly
it is clearer that this is a VAR parameter (as we ex-Pascal types say :). It's
a matter of taste--I don't think there are any real efficiency differences 
between the two methods.

   Thus,  

   void func1(int & i)  // reference method

   is 'preferred' over

   void func2(int * i)   // pointer method

   What are some other advantages? Is one really often (if not
   always) preferred over the other?

Stroustrup prefers passing an explicit pointer. I am ambivalent on this issue,
since my code (so far) is for myself alone, and, having used Pascal extensively
I am comfortable with the idea of pass-by-reference. Often it is clear from 
context that a variable is being changed.

   I appreciate any comments.  If this has already been discussed
   in a separate subject, I apologise for repetition.

regards,
doug
--
<><><><><><><><><><><><><><><>Go Orioles<><><><><><><><><><><><><><><><>
<> Doug McNaught                          dougm@descartes.caltech.edu <>
<>  Help!!! I'm addicted to *Spaceward Ho!* Is there a support group? <>
<><><><><><><><><><><><><><><>Go Orioles<><><><><><><><><><><><><><><><>
Newsgroups: comp.lang.c++
From: ramesh@cs.wisc.edu (Ramesh Parameswaran)
Subject: Benchmarks 
Organization: U of Wisconsin CS Dept
Date: Tue, 14 Apr 1992 02:42:48 GMT

Keywords: 


    Can anyone tell me where I can get hold of benchmark programs
    for C++. This is in connection with work on a compiler for C++.

    Pls send mail to me. 
    Thanx a lot
    
    Ramesh
From: thant@horus.esd.sgi.com (Thant Tessman)
Newsgroups: comp.lang.c++
Subject: Re: A Book for C++
Date: 7 Apr 92 16:57:38 GMT
Organization: sgi

In article <1992Apr03.235100.26161@microsoft.com>, w-frankc@microsoft.com (Frank CHANG) writes:

> I think "The Annotated C++ reference manual by ELLIS & STROUSTRUP" is
> a pretty good C++ book.  but I can't seem to find it anywhere..
> Can anyone show me where I can get this book?

This book is a definite must-have, but I don't think it is an
appropriate book to learn C++ from.  Lippman's C++ primer seems
to be a good book for learning the language.  (I already knew C++
when I bought it, so I haven't gone through it with a fine-toothed 
comb.  I bought it for 2.0 info.)  It assumes you know how to program 
in some modern block-structured programming language, but not 
necessarily C.  The book that I first learned the most C++ from was the 
Dewhurst and Stark book.  I think it assumes you know C, but I lent it 
out so I can't be sure.

thant@sgi.com
Newsgroups: comp.lang.c++
From: schwartz@possum.den.mmc.com (Michael I Schwartz)
Subject: In the presence of a pure virtual destructor
Organization: Martin Marietta Astronautics, Denver
Distribution: na
Date: Wed, 15 Apr 1992 05:17:51 GMT

In discussing the ability (and sanity) of creating a pure virtual
destructor, the following example results.  Should the non-virtual
destructor be required (or will there be a compiler-generated default
for the base class)?

// puredelete.cc
#include <iostream.h>

class X
{
  public:
    X() { cout << "X created" << endl; }
    virtual ~X() = 0; // PURE VIRTUAL DESTRUCTOR!
};

// Reference manual sez this is ok
// In fact, without it Borland shows a linker error
// G++ 2.1 cannot compile it (redefinition)
X::~X() { cout << "Non-virtual X destructor called" << endl; }

class Y : public X
{
  public:
    Y() { cout << "Y created" << endl; }
    ~Y() { cout << "Y's destructor called" << endl; }
};

main()
{
  {
    // X x; // This should be illegal. It is.
  }
  
  // This should be legal (doesn't use virtualness of destructor)
  {
    Y y;    
  }

  // This should be legal (and does use virtualness of destructor)
  {
    X* xp = new Y;
    delete xp;
  }
  cout << "Done." << endl;
  return 0;
}

// Output expected:
// X created
// Y created
// Y's destructor called
// Non-virtual X destructor called
// X created
// Y created
// Y's destructor called
// Non-virtual X destructor called
// Done.
-- 
schwartz@pogo.den.mmc.com              "You'll find ... that the only thing 
mschwartz@mmc.com                          you can do easily is be wrong, 
DISCLAIMER:  The opinions expressed are      and that's hardly worth the effort"
not necessarily those of my employer or myself.          --the phantom tollbooth
From: Ranjit.Thomas@f506.n712.z3.fx.cec.edu.au (Ranjit Thomas)
Newsgroups: comp.lang.c++
Subject: Best C++ Books
Date: Sat, 11 Apr 1992 18:37:00 +1000

 -=> Quoting John Wiehn to All <=-
 JW> If you could have only 3 or 4 C++ Books in your personal library which
 JW> ones would you choose????

Coplien's book "Advanced C++ programming styles and idioms " is 
worth looking at.


 * Origin: RAECHO v1.1 - The Runway Health & Business BBS  (3:712/506@fidonet)
Newsgroups: comp.lang.c++