Monday, January 9, 2017

Digest for comp.lang.c++@googlegroups.com - 25 updates in 8 topics

moroney@world.std.spaamtrap.com (Michael Moroney): Jan 03 03:58AM

Gee, the code from the forged Relf looks better than the code from
the real Jeff.
Peter Köhlmann <peter-koehlmann@t-online.de>: Jan 03 12:13PM +0100

The worst "programmer" of all time babbled:
 
 
> Top: if ( TopMatch ) if ( BtmMatch ) goto Done ; else goto Btm ;
> if ( Level = BB_Fast - BB_Slow, TopFlags, TopMatch = !S && !_S
> ) {
 
Ye gods!
GreyCloud <mist@cumulus.com>: Jan 03 12:16PM -0700

On 01/03/17 04:13, Peter Köhlmann wrote:
>> if ( Level = BB_Fast - BB_Slow, TopFlags, TopMatch = !S&& !_S
>> ) {
 
> Ye gods!
 
He doesn't work for anybody needing code. That much is certain.
Otherwise, he'd have been fired.
Jeff-Relf.Me <@..sour>: Jan 03 08:51AM

؛ ɐuן* duן ɟǝpǝdʎʇ ؛ duן* ɹɐɥɔʍ ɟǝpǝdʎʇ ؛ ɹɐɥɔʍ ʇ‾ɹɐɥɔʍ ɟǝpǝdʎʇ

( ɾǝ => ɾ++ ) ǝןıɥʍ ؛ Ɩ- = ɾ 'Ɩ - ( u ) = ɾǝ ʇuı ( u )dooן ǝuıɟǝp#

:sןɐqoןb ɹɐɟ

( pıɯ‾ =< ʇsɐɟ‾ǝǝ‾ = ɟ‾ 'pıɯ =< ʇsɐɟ‾ǝǝ = ɟ 'pıɯ‾ =< ʍoןs‾ǝǝ‾ = s‾ 'pıɯ =< ʍoןs‾ǝǝ = s ) sbɐןɟɯʇq ǝuıɟǝp#
( pıɯ‾ => ʇsɐɟ‾qq‾ = ɟ‾ 'pıɯ => ʇsɐɟ‾qq = ɟ 'pıɯ‾ => ʍoןs‾qq‾ = s‾ 'pıɯ => ʍoןs‾qq = s ) sbɐןɟdoʇ ǝuıɟǝp#

{ ؛ dd‾++ = xǝǝ‾ 'dd++ = xǝǝ ؛( dnɥɔʇɐɯ ) ǝןıɥʍ
؛ ǝǝ‾ = dd‾ 'ǝǝ = dd 'dd‾ = qq‾ = xqq‾ 'dd = qq = xqq
؛( uʍpɥɔʇɐɯ ) ǝןıɥʍ ؛ Ɩ - qq‾ = dd‾ 'Ɩ - qq = dd ɐuן
} ( ǝǝ‾ ɐuן 'qq‾ ɐuן 'ǝǝ ɐuן 'qq ɐuן )ɥɔuıd

{ ؛ ɥɔʇɐɯɯʇq uɹnʇǝɹ ؛ ɟ*¡ : ɾǝ- ¿ dnɥɔʇɐɯ¡ =+ ɾǝ ( 66/ןǝʌǝן + Ɩ )dooן
؛ dd‾ = ɥɔʇɐɯ‾ǝǝ‾ 'dd = ɥɔʇɐɯ‾ǝǝ } ( qq‾ ɐuן 'dd‾ ɐuן 'qq ɐuן 'dd ɐuן )ɥɔʇɐɯɯʇqb ʇuı

{ ؛ ɥɔʇɐɯdoʇ uɹnʇǝɹ ؛ ɟ*¡ : ɾǝ- ¿ uʍpɥɔʇɐɯ¡ =+ ɾǝ ( 66/ןǝʌǝן + Ɩ )dooן
˙sǝuıן ɟo spǝɹpunɥ „ʇno buıɯooz„ uǝɥʍ pǝpǝǝu ǝɹɐ sǝɥɔʇɐɯ ǝɹoɯ //
؛poob sı ( sǝuıן ʞuɐןq buıʇunoɔ ʇou ) ɥɔʇɐɯ ǝuo 'suosıɹɐdɯoɔ ʎqɹɐǝu ɹoɟ //

؛ --dd‾ '--dd 'dd‾ = ɥɔʇɐɯ‾qq‾ 'dd = ɥɔʇɐɯ‾qq } ( ǝǝ‾ ɐuן 'dd‾ ɐuן 'ǝǝ ɐuן 'dd ɐuן )ɥɔʇɐɯdoʇb ʇuı

( dd* : 0 ¿ qq > dd-- = d ) ( qq 'dd 'd )dnɥɔʇɐɯ‾ ǝuıɟǝp#
( ɥɔʇɐɯsuǝʞoʇ = ɥɔʇɐɯɯʇq '( qq‾ 'dd‾ 'ɟ‾ )dnɥɔʇɐɯ‾ '( qq 'dd 'ɟ )dnɥɔʇɐɯ‾ ) dnɥɔʇɐɯ ǝuıɟǝp#

( dd* : 0 ¿ ǝǝ =< dd++ = d ) ( ǝǝ 'dd 'd )uʍpɥɔʇɐɯ‾ ǝuıɟǝp#
( ɥɔʇɐɯsuǝʞoʇ = ɥɔʇɐɯdoʇ '( ǝǝ‾ 'dd‾ 'ɟ‾ )uʍpɥɔʇɐɯ‾ '( ǝǝ 'dd 'ɟ )uʍpɥɔʇɐɯ‾ ) uʍpɥɔʇɐɯ ǝuıɟǝp#

( ʍoןs‾ǝǝ‾ = ʇsɐɟ‾ǝǝ‾ 'ʍoןs‾ǝǝ = ʇsɐɟ‾ǝǝ ) ʇsɐɟ‾ǝǝʇǝsǝɹ ǝuıɟǝp#
( ʍoןs‾qq‾ = ʇsɐɟ‾qq‾ 'ʍoןs‾qq = ʇsɐɟ‾qq ) ʇsɐɟ‾qqʇǝsǝɹ ǝuıɟǝp#
( ( ɟ‾ 'ɟ )bǝ && [Ɩ-]ɟ‾ == [Ɩ-]ɟ && ɟ‾ && ɟ ) ɥɔʇɐɯsuǝʞoʇ ǝuıɟǝp#

؛ ɥɔʇɐɯ‾ǝǝ‾ 'ɥɔʇɐɯ‾qq‾ 'ɥɔʇɐɯ‾ǝǝ 'ɥɔʇɐɯ‾qq 'xǝǝ‾ 'xqq‾ 'xǝǝ 'xqq ɐuן
؛ ɟ‾ 'ɟ duן ؛ ɥɔʇɐɯɯʇq 'ɥɔʇɐɯdoʇ 'ןǝʌǝן ʇuı

:sןɐqoןb ɹɐǝu


{ ؛( qq 'qq‾ = ɥɔʇɐɯ‾ǝǝ‾ ) : ( ɥɔʇɐɯ‾qq 'ɥɔʇɐɯ‾qq‾ = ɥɔʇɐɯ‾ǝǝ‾ ) ¿ ɥɔʇɐɯ‾qq : ɥɔʇɐɯ‾ǝǝ ¿ ɥɔʇɐɯ‾ǝǝ && ɥɔʇɐɯ‾qq = ɥɔʇɐɯ‾ǝǝ
؛( ǝǝ 'ǝǝ‾ = ɥɔʇɐɯ‾qq‾ ) : ( ɥɔʇɐɯ‾ǝǝ 'ɥɔʇɐɯ‾ǝǝ‾ = ɥɔʇɐɯ‾qq‾ ) ¿ ɥɔʇɐɯ‾ǝǝ : ɥɔʇɐɯ‾qq ¿ ɥɔʇɐɯ‾ǝǝ && ɥɔʇɐɯ‾qq = ɥɔʇɐɯ‾qq :ǝuop

؛ doʇ oʇob ؛ ʇsɐɟ‾ǝǝʇǝsǝɹ 's‾ =- ʍoןs‾ǝǝ‾ 's =- ʍoןs‾ǝǝ ( ( s && ɟ‾ || s‾ && ɟ )¡ 'sbɐןɟɯʇq ) ɟı
˙sɟɟıp ɟo ɹıɐd ɐ buıʍoɹb snɥʇ 'ɹǝʍǝuʇɥbıɹ puɐ ɹǝpןoʇɟǝן ɟo ɯoʇʇoq ǝɥʇ ǝsıɐɹ //

؛ doʇ oʇob ǝsןǝ ؛ --ʇsɐɟ‾ǝǝ‾ ( ( qq‾ 'ʇsɐɟ‾ǝǝ‾ 'qq 'ʍoןs‾ǝǝ )ɥɔʇɐɯɯʇqb¡ ) ɟı ( s && ɟ‾ ) ɟı
؛ doʇ oʇob ǝsןǝ ؛ --ʇsɐɟ‾ǝǝ ( ( qq‾ 'ʍoןs‾ǝǝ‾ 'qq 'ʇsɐɟ‾ǝǝ )ɥɔʇɐɯɯʇqb¡ ) ɟı ( s‾ && ɟ ) ɟı

{ ؛ doʇ oʇob ؛ 0 = ɥɔʇɐɯ‾ǝǝ
˙sǝɥɔʇɐɯ ou 'ɹǝʍǝuʇɥbıɹ puɐ ɹǝpןoʇɟǝן ɟo ɯoʇʇoq ǝɥʇ buıuɐɔs ǝuop //

} ( s‾¡ && s¡ = ɥɔʇɐɯɯʇq 'sbɐןɟɯʇq 'ʇsɐɟ‾ǝǝ - ʍoןs‾ǝǝ = ןǝʌǝן ) ɟı
؛ doʇ oʇob ǝsןǝ ؛ ǝuop oʇob ( ɥɔʇɐɯdoʇ ) ɟı ( ɥɔʇɐɯɯʇq ) ɟı :ɯʇq

؛ ɯʇq oʇob ؛ ʇsɐɟ‾qqʇǝsǝɹ 's‾ =+ ʍoןs‾qq‾ 's =+ ʍoןs‾qq ( ( s && ɟ‾ || s‾ && ɟ )¡ 'sbɐןɟdoʇ ) ɟı
˙sɟɟıp ɟo ɹıɐd ɐ buıʍoɹb snɥʇ 'ɹǝʍǝuʇɥbıɹ puɐ ɹǝpןoʇɟǝן ɟo doʇ ǝɥʇ ɹǝʍoן //

؛ ɯʇq oʇob ǝsןǝ ؛ ++ʇsɐɟ‾qq‾ ( ( ǝǝ‾ 'ʇsɐɟ‾qq‾ 'ǝǝ 'ʍoןs‾qq )ɥɔʇɐɯdoʇb¡ ) ɟı ( s && ɟ‾ ) ɟı
؛ ɯʇq oʇob ǝsןǝ ؛ ++ʇsɐɟ‾qq ( ( ǝǝ‾ 'ʍoןs‾qq‾ 'ǝǝ 'ʇsɐɟ‾qq )ɥɔʇɐɯdoʇb¡ ) ɟı ( s‾ && ɟ ) ɟı

{ ؛ ɯʇq oʇob ؛ 0 = ɥɔʇɐɯ‾qq
˙sǝɥɔʇɐɯ ou 'ɹǝʍǝuʇɥbıɹ puɐ ɹǝpןoʇɟǝן ɟo doʇ ǝɥʇ buıuɐɔs ǝuop //

} ( s‾¡ && s¡ = ɥɔʇɐɯdoʇ 'sbɐןɟdoʇ 'ʍoןs‾qq - ʇsɐɟ‾qq = ןǝʌǝן ) ɟı
؛ ɯʇq oʇob ǝsןǝ ؛ ǝuop oʇob ( ɥɔʇɐɯɯʇq ) ɟı ( ɥɔʇɐɯdoʇ ) ɟı :doʇ

؛ ʇsɐɟ‾ǝǝʇǝsǝɹ 'ʇsɐɟ‾qqʇǝsǝɹ 'ǝǝ‾ = ʍoןs‾ǝǝ‾ 'ǝǝ = ʍoןs‾ǝǝ
؛ qq‾ = ʍoןs‾qq‾ 'qq = ʍoןs‾qq '0 = ɥɔʇɐɯɯʇq = ɥɔʇɐɯdoʇ
؛ ᄅ/( qq‾ - ǝǝ‾ ) + qq‾ = pıɯ‾ 'ᄅ/( qq - ǝǝ ) + qq = pıɯ 'ʇsɐɟ‾ǝǝ‾ '
ʇsɐɟ‾ǝǝ 'ʍoןs‾ǝǝ‾ 'ʍoןs‾ǝǝ 'ʇsɐɟ‾qq‾ 'ʇsɐɟ‾qq 'ʍoןs‾qq‾ 'ʍoןs‾qq ɐuן ؛ ʇ‾ 'ʇ duן
؛ ɟ‾ 'ɟ 's‾ 's 'ʌɹ ʇuı } ( ǝǝ‾ ɐuן 'qq‾ ɐuן 'ǝǝ ɐuן 'qq ɐuן )ןǝǝd pıoʌ

˙ǝןıɟ ɹǝʍǝuʇɥbıɹ ǝɥʇ ɯoɹɟ ǝɹɐ ǝǝ‾ puɐ qq‾ //
˙ǝןıɟ ɹǝpןoʇɟǝן ǝɥʇ ɯoɹɟ ǝɹɐ ǝǝ puɐ qq //
˙(sǝuıן sǝɥɔʇɐɯsıɯ) „sɟɟıp„ oʇ ʇuıod ǝǝ puɐ qq 'ʎpɐǝɹןɐ //
//
˙ʎɐɹɹɐ ǝɥʇ ɟo puǝ ǝɥʇ oʇ sʇuıod ǝǝ //
؛( sɹǝʇuıod ) sǝuıן ɟo ʎɐɹɹɐ ɔıɯɐuʎp ɐ ɟo ʇɹɐʇs ǝɥʇ oʇ ɹǝʇuıod ɐ sı qq //
//
˙sǝןıɟ ʇxǝʇ ɹǝʍǝuʇɥbıɹ puɐ ɹǝpןoʇɟǝן ɟo //
sɯoʇʇoq puɐ sdoʇ ǝɥʇ ɯoɹɟ sɟɟıp ɟɟo sןǝǝd 'ʍoןǝq '()ןǝǝd //

ɯʇɥ˙x/ǝɯ˙ɟןǝɹ-ɟɟǝɾ//:dʇʇɥ :sbuıʇʇǝs/dןǝɥ //
bud˙ɟɟıp/ǝɯ˙ɟןǝɹ-ɟɟǝɾ//:dʇʇɥ :ʇoɥsuǝǝɹɔs //

:s,ʇı 'ʎןʇuǝɹɹnɔ

˙ʎq sǝob ǝɯıʇ sɐ 'uıɐbɐ ʇı ǝbuɐɥɔ oʇ ǝɹns ɯ,ı
؛ǝsɹnoɔ ɟo 'ʇı ǝʇoɹʍǝɹ ʎןǝʇǝןdɯoɔ ı 'uǝɥʇ ǝɔuıs

˙ǝɯ‾ sdןǝɥ ʇı ʇnq 'ʎǝɥʇ pןnoɥs ɹou
'pǝʇsod ı ǝpoɔ ++ɔ ǝɥʇ ʇnoqɐ ʇıɥs ɐ sǝʌıb ǝuo ou

˙ɟɟǝɾ ןɐǝɹ ǝɥʇ ɯoɹɟ ǝpoɔ ǝɥʇ <
uɐɥʇ ɹǝʇʇǝq sʞooן ɟןǝɹ pǝbɹoɟ ǝɥʇ ɯoɹɟ ǝpoɔ ǝɥʇ 'ǝǝb <
:ǝʇoɹʍ ( ʎǝuoɹoɯןǝɐɥɔıɯ ) noʎ
GreyCloud <mist@cumulus.com>: Jan 03 12:16PM -0700

On 01/03/17 06:32, chrisv wrote:
Melzzzzz <mel@zzzzz.com>: Jan 03 12:28PM +0100

On Tue, 03 Jan 2017 12:13:42 +0100
> > Btm ; if ( Level = BB_Fast - BB_Slow, TopFlags, TopMatch = !S && !_S
> > ) {
 
> Ye gods!
 
I think that he is insane...
 
--
press any key to continue or any other to quit...
Jeff-Relf.Me <@.>: Jan 04 10:17AM -0800

jmfbahciv <See.above@aol.com>: Jan 05 02:08PM

Scott Lurndal wrote:
> handle in a reasonable amount of time given memory constraints.
 
> Compact (dense) code was more the rule than the exception in those
> days.
 
Another reason is having been on a firefight, fixing the installation's
code so it can run, then carrying back the changes and taking 2 months
to figure out why the new fixes worked. However, the end result is
"if it ain't broke, don't fix it" so the impenetrable code stays
with lots of comments including "thar be dragons".
 
/BAH
Peter Köhlmann <peter-koehlmann@t-online.de>: Jan 04 07:19PM +0100

wrote:
 
 
> LCS( "ABCDE", "AEBDF" ) = Max( LCS( "ABCD", "AEBDF" ), LCS( "AEBD",
> "ABCDE" ) )
> LCS( "ABCD", "AEBD" ) = 1 + LCS( "ABC", "AEB" )
 
Idiot
Jeff-Relf.Me <@.>: Jan 03 01:00PM -0800

Peter Köhlmann <peter-koehlmann@t-online.de>: Jan 05 09:24AM +0100

Anonymous wrote:
 
>> http://www.geeksforgeeks.org/dynamic-programming-set-4-longest-common-subsequence/
 
> Jeff, just out of curiosity: did you ever tried programming in Lisp or
> Forth?
 
Relf programmes in "Shit". And naturally writes shitty code
jmfbahciv <See.above@aol.com>: Jan 05 02:08PM

Jeff-Relf.Me wrote:
 
>> Compact (dense) code was more the rule
>> than the exception in those days.
 
> My C++ is dense, 236 columns wide, and I'm running:
 
Oh, goodfuckinggrief. That's not the definition of dense code.
It's called human-unreadable code. White space helps the
maintainer and gives one margins to scribble notes.
 
Now everything you wrote about this subject makes sense.
 
[embarassed emotiocn here for not thinking of his definition]
 
You are a newbie.
 
/BAH
Vir Campestris <vir.campestris@invalid.invalid>: Jan 03 09:27PM

On 03/01/2017 03:58, Michael Moroney wrote:
> Gee, the code from the forged Relf looks better than the code from
> the real Jeff.
 
FFS - HE's got a stalker???
Vir Campestris <vir.campestris@invalid.invalid>: Jan 05 09:05PM


> clang++ GradeBook.h GradeBook.cpp fig03_13.cpp
 
> produces an a.out that works and it produces a file named
> GradeBook.h.gch
 
Your teacher should have explained.
 
clang++ -o fig03_13 GradeBook.cpp fig03_13.cpp
clang++ GradeBook.cpp fig03_13.cpp -o fig03_13
 
ought to do it. That's your lines, but without the .h file.
 
Inside the cpp files you'll find a line
#include "GradeBook.h"
which is how it gets used.
 
Andy
Stefan Ram <ram@zedat.fu-berlin.de>: Jan 04 06:12PM

cancel <Taktfrequenzen-20170104190616@ram.dialup.fu-berlin.de> in newsgroup comp.lang.c++
 
This article was cancelled from within 6.6.4 (NOV)
ram@zedat.fu-berlin.de (Stefan Ram): Jan 05 08:45PM

>clang++ -o fig03_13 GradeBook.h GradeBook.cpp fig03_13.cpp
 
I assume that header files (like »GradeBook.h«) are meant to
be included in the source files, but to /not/ be specified on
the command line of the compiler call.
Ian Collins <ian-news@hotmail.com>: Jan 05 08:37AM +1300

On 01/ 5/17 06:02 AM, Jorgen Grahn wrote:
 
> I've used Google Test too, but I'm not very impressed. I remember them
> making it hard to integrate with the build system, unless you choose
> the build system /they/ like.
 
That's a non-issue these days.
 
--
Ian
Jorgen Grahn <grahn+nntp@snipabacken.se>: Jan 04 05:02PM

On Tue, 2017-01-03, Daniel wrote:
> https://github.com/philsquared/Catch, but it tries to be too clever,
> resulting in too many issues.
 
> Any suggestions?
 
I'm always willing to plug my own: https://github.com/kjgrahn/orchis
But it's very minimal, and you can tell I don't like the official unit
test ideology very much.
 
I've used Google Test too, but I'm not very impressed. I remember them
making it hard to integrate with the build system, unless you choose
the build system /they/ like.
 
/Jorgen
 
--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .
Dombo <dombo@disposable.invalid>: Jan 04 09:34PM +0100

Op 04-Jan-17 om 18:02 schreef Jorgen Grahn:
 
> I've used Google Test too, but I'm not very impressed. I remember them
> making it hard to integrate with the build system, unless you choose
> the build system /they/ like.
 
I've been using the Google Test framework for a year now, and frankly I
don't see what would make it hard to integrate it with a build system,
or why it would prefer a particular build system. As far as I can tell
it is pretty much build system agnostic.
 
Of the C++ test frameworks I've had the (dis)pleasure to work with,
including some "homebrew" and Boost, the Google Test framework is
certainly not the worst. But it isn't that great either when compared to
the test frameworks for other programming languages like C#. Though the
Google test framework has a reasonable amount of documentation, it isn't
all that well organized; I find myself googling a lot for the
information I need rather than navigating through the documentation. I
also find it somewhat lacking in the extendability department. But other
than that it (mostly) does the job.
Ian Collins <ian-news@hotmail.com>: Jan 05 10:12PM +1300

On 01/ 5/17 09:49 PM, Jorgen Grahn wrote:
> remember it, we ended up having to build it as part of the project,
> rather than installing it as a library. And it wasn't very clear
> /how/ to build it using Make; they shipped with CMake recipes.
 
Usually projects just build gtest-all.cc :)
 
--
Ian
Gareth Owen <gwowen@gmail.com>: Jan 04 06:39PM


> Well, Gareth Owen wrote "std::list::sort is *not* required to be
> stable", and Mr Flibble replied correctly that it is. That was in the
> text that you snipped.
 
Yup. In this regard, Flibble was entirely correct.
Ian Collins <ian-news@hotmail.com>: Jan 05 11:27AM +1300

On 01/ 5/17 11:18 AM, bitrex wrote:
> been used to instantiate the class on a static buffer, without resorting
> to initializing the static field for the buffer outside the class
> definition?
 
I don't think there is, Bar<T>::_buf still has to be defined, whether
placement new or regular new is used.
 
Don't forget that static data members aren't part of class instances.
 
--
Ian
Paavo Helde <myfirstname@osa.pri.ee>: Jan 02 10:20PM +0200

On 2.01.2017 20:39, bitrex wrote:
 
> Thanks, okay. Consider the following example:
 
It looks like you are mixing up vector<string> and
vector<vector<string>> in several places. You have to make up your mind
what you want to use where.
 
This code could also benefit from a couple of typedefs (or their newer
incarnation via 'using'). Inconsistent usage of std:: prefix does not
help either.
 
 
 
> void process(std::vector<std::string>::iterator first,
> std::vector<std::string>::iterator last,
> std::vector<std::string>& thread_data);
 
In process() you expect vector<string>::iterator and vector<string>.
 
 
 
> std::array<thread, num_threads> t;
 
> auto chunks =
> chunk(std::begin(vec_string), std::end(vec_string), num_threads);
 
Here you pass in vector<vector<string>>::iterators and consequently
these are the iterators stored in chunks.
 
 
> t[i] = thread(process, chunks[i].first, chunks[i].second,
> std::ref(vec_string));
> }
 
Thus, here you pass vector<vector<string>>::iterator instead of expected
vector<string>::iterator, and a vector<vector<string>> instead of a
vector<string>.
bitrex <bitrex@de.lete.earthlink.net>: Jan 02 05:55PM -0500

On 01/02/2017 03:20 PM, Paavo Helde wrote:
 
> Thus, here you pass vector<vector<string>>::iterator instead of expected
> vector<string>::iterator, and a vector<vector<string>> instead of a
> vector<string>.
 
I see, thank you - yes I should be passing an iterator to the proper
thing, I suppose...;-)
 
The desired functionality is to subdivide the outer std::vector into n
blocks of the inner std::vector<std::string> and pass each block of the
latter to the "process" function.
Jerry Stuckle <jstucklex@attglobal.net>: Jan 02 10:58PM -0500

On 1/2/2017 10:34 PM, Chris M. Thomasson wrote:
>> declared twice: in the class and in the map.
 
> IIRC, there was a way to use a thunk to store the this pointer in a
> window, removing the need for a map lookup.
 
How is this going to help? How are you going to equate the hundreds of
Windows messages to the appropriate functions without a message map?
Maybe a switch statement with hundreds of case clauses? Hundreds of
if/else statements?
 
--
==================
Remove the "x" from my email address
Jerry Stuckle
jstucklex@attglobal.net
==================
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page.
To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com.

No comments: