Mega Code Archive

 
Categories / C++ / Development
 

Terminate Handler

#include <fstream> #include <iostream> #include <vector> #include <string> #include <stdexcept> #include <exception> using namespace std; void readIntegerFile(const string& fileName, vector<int>& dest) {   ifstream istr;   int temp;   istr.open(fileName.c_str());   if (istr.fail()) {     throw invalid_argument("");   }   while (istr >> temp) {     dest.push_back(temp);   }   if (istr.eof()) {     istr.close();   } else {     istr.close();     throw runtime_error("");   } } void myTerminate() {   cout << "Uncaught exception!\n";   exit(1); } int main(int argc, char** argv) {   vector<int> myInts;   const string fileName = "IntegerFile.txt";   set_terminate(myTerminate);   readIntegerFile(fileName, myInts);   for (size_t i = 0; i < myInts.size(); i++) {     cerr << myInts[i] << " ";   }   cout << endl;   return (0); }