Hello everyone,
It's been a while since I worked with a low level language such as C++, so
I forgot much of the intimate details about how C++ works under the hood.
I'm using a modified version of the below section of code which I got from
the API example. I pasted the code I'm referring to below.
As you can see near the very bottom, (delete[] symbol;) the pointer
variable symbol is being explicitly deleted in order to free up that piece
of memory.
However, I notice that other pointers that were created are not being
explicitly deleted in the same fashion,
namely, tesseract::ResultIterator* ri .....and ...... const char* choice.
Does this mean that memory is being freed some other way? I'm confused
because I thought that native C++ doesn't have garbage collection.
I'll be running the below code on a server as part of a web application
(crazy, I know) and I wouldn't want my server's memory to eventually get
filled up.
Excuse the newbie question and thanks! Your help is appreciated.
Pix *image = pixRead("/usr/src/tesseract/testing/phototest.tif");
tesseract::TessBaseAPI *api = new tesseract::TessBaseAPI();
api->Init(NULL, "eng");
api->SetImage(image);
api->SetVariable("save_blob_choices", "T");
api->SetRectangle(37, 228, 548, 31);
api->Recognize(NULL);
tesseract::ResultIterator* ri = api->GetIterator();
tesseract::PageIteratorLevel level = tesseract::RIL_SYMBOL;
if(ri != 0) {
do {
const char* symbol = ri->GetUTF8Text(level);
float conf = ri->Confidence(level);
if(symbol != 0) {
printf("symbol %s, conf: %f", symbol, conf);
bool indent = false;
tesseract::ChoiceIterator ci(*ri);
do {
if (indent) printf("\t\t ");
printf("\t- ");
const char* choice = ci.GetUTF8Text();
printf("%s conf: %f\n", choice, ci.Confidence());
indent = true;
} while(ci.Next());
}
printf("---------------------------------------------\n");
delete[] symbol;
} while((ri->Next(level)));
}
--
You received this message because you are subscribed to the Google Groups
"tesseract-ocr" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/tesseract-ocr.
To view this discussion on the web visit
https://groups.google.com/d/msgid/tesseract-ocr/40c5b09d-29c9-4c77-8e86-0e25ab76be4b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.