LINUX.ORG.RU

История изменений

Исправление Dudraug, (текущая версия) :

template<class ErrorHandler>
class fstream
{
std::shared_ptr<ErrorHandler> h;
fstream() : h(new ErrorHandler{})
{
}
бла-бла
~fstream()
{
  try {
    бла-бла
  } catch (бла-бла) {
      h->ProcessError(бла-бла);
  }
  
}

Можно тоже самое сделать через интерфейсы без шаблонов, это уже вкусовщина.

Исправление Dudraug, :

template<class ErrorHandler>
class fstream
{
std::shared_ptr<ErrorHandler> h;
fstream() : h(new ErrorHandler{})
{
}
бла-бла
~fstream()
{
  try {
    бла-бла
  } catch (бла-бла) {
      h->ProcessError(бла-бла);
  }
  
}

Можно тоже самое сделать через интерфейсы беж шаблонов, это уже вкусовщина.

Исходная версия Dudraug, :

template<class ErrorHandler>
class fstream
{
std::shared_ptr<ErrorHandler> h;
fstream() : h(new ErrorHandler{})
{
}
бла-бла
~fstream()
{
  try {
  } catch (бла-бла) {
      h->ProcessError(бла-бла);
  }
  
}

Можно тоже самое сделать через интерфейсы беж шаблонов, это уже вкусовщина.