Intellisense -- Using a Database

Matthew Adams ma at
Wed Jul 7 10:53:59 BST 1999

I don't want to be contradictory, but just glancing at the content of the
(700k) pdb I have for one small project, it appears to contain every symbol
used in the applet in some structured form (including things such as all my
template resolutions and what have you).    This, however, is different from
the 'browser' file which can also be generated (which contains much the same
information in a different structure), which is different again from the
stuff used for syntax highlighting.  What exactly do you mean by
'configuration'?  I can delete the pdb file and it is gamely reconstructed
during compilation (indeed, deleting the pdb file is necessary when the
compiler gets its knickers in a twist over what needs recompilation and what
doesn't).  You are right that the code completion in VC++ doesn't depend
entirely on a database (since it works a little before you have compiled
anything), but it breaks horribly when compiles go bad, because it does pull
stuff out of (presumably) the pdb file if it is available.

The VC++ approach appears to be multi-faceted, which is an approach to
consider. (However, it has slowed the development environment down to such a
crawl for projects of more than a few dozen classes that I now prefer using
Rational Rose, UltraEdit32 and no code completion/IDE for 'proper' work -
particularly now the MSDN help browser has migrated out of the IDE, anyway).

Matthew Adams
Development Project Manager
EG&G Wallac LSR

> -----Original Message-----
> From: owner-kdevelop at
> [mailto:owner-kdevelop at]On Behalf Of Damien House
> Sent: 24 June 1999 16:32
> To: kdevelop at
> Subject: Intellisense -- Using a Database
> Ok, if you guys are so bent on taking the easy database way out
> on this you
> should know that none of the other IDE's mentioned, Visual C++, Visual
> Basic, CBuilder, and Delphi, use this method.  I garauntee that
> if you use
> this method the results will be nothing but slow performance, and
> chaos in
> keeping up the database.
> If you take a look at the files in a Visual C++ Project, it
> creates, i think
> whats are called pdb files, which store CONFIGURATIONS.  The same
> goes with
> Delphi.  They do not store a database of classes, members, and
> functions.
> If they did, then it shouldn't be so that I can open up a Delphi file
> without creating a project, and still be able to have Code Completion.
> I think the problem here lies in that you think you solved the
> ClassBrowser
> problem with parsing and creating a db file, so why not do the same for
> CodeCompletion.  The problem is that those of you comming up with
> teh ideas
> have never looked at teh source for IDE's that have made class
> browsers and
> code completion solutions, MUCH MORE ELEGANTLY.  In this, i mean that the
> solutions result in speedy preformance, hence the use of
> assembly, and very
> little memory is used.  For example, using your method, I would
> not be able
> to do what I can do in Delphi which is hold the mouse over a variable and
> within .5 seconds see what kind of variable it is, what unit it
> was declared
> in, and what line.
> But as I said, I dont even have kdeveloper, so I can't tell you
> what in code
> you need to do.  But I can give you the advise of an experianced
> developer
> and designer.
> (I am in no way condeming your work, I believe the list when they
> say this is a great product.)
> ciao
> Damien House
> Chief Software Engineer
> Full Circle Solutions, Inc.
> 410-659-9983
> _______________________________________________________________
> Get Free Email and Do More On The Web. Visit

More information about the KDevelop mailing list