| www.delorie.com/archives/browse.cgi | search |
| From: | T DOT Mcdonald AT uea DOT ac DOT uk (Terry McDonald) |
| Newsgroups: | comp.os.msdos.djgpp |
| Subject: | destructors for C++ classes. |
| Date: | Sat, 27 Feb 1999 10:36:59 GMT |
| Organization: | University of East Anglia, Norwich, Norfolk, NR47TJ, UK |
| Lines: | 75 |
| Message-ID: | <36d7c7dc.49356683@news.uea.ac.uk> |
| NNTP-Posting-Host: | d36.dialup.uea.ac.uk |
| X-Newsreader: | Forte Free Agent 1.11/32.235 |
| To: | djgpp AT delorie DOT com |
| DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
| Reply-To: | djgpp AT delorie DOT com |
I have written the following class which works perfictly ;-)
#include<vector>
#include<string>
class Parse
{
private:
vector<string> words;
public:
Parse(string phrase);
int numWords(void);
string operator[](int elem);
//~Parse();
};
I am using it in a program with a loop simular to this...
int main(void)
{
string sentance;
int num;
for (int x = 0; x < 5; x++)
{
cin >> sentance;
Parse xyzzy(sentance);
for (int y = 0; y < xyzzy.numWords(); y++)
{
cout << xyzzy[y] << endl;
}
//~xyzzy;
}
return 0;
}
I want to destruct the xyzzy at the end of every x loop before it is
re-constructed to parse the next senatance entered. Every time I try
to write a destructor I get errors. I've tryed the following:
Parse::~Parse
{
~words;
}
Parse::~Parse
{
delete [] words;
}
Parse::~Parse
{
delete words[];
}
Parse::~Parse
{
delete [] words [];
}
Parse::~Parse
{
for (int loop = 0; loop < words.size(); loop++)
{
delete words[loop];
}
}
none of the above work. If anyone knows the answer please help!
Thanx in advance.
Terry.
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |