У меня есть следующий код:
class Transaction : public transactor<>
{
public:
Transaction(arg1, arg2) // can put any number of args
:transactor<>(arg1)
{
//some initialization
}
void operator()(argument_type &T)
{
//create an array
//cannot modify outside program from here
}
void on_commit()
{
//must make array created in operator()() available to outside program here
//cannot return anything
}
И operator()()
, и on_commit()
вызываются сторонним кодом.
В методе operator()()
я создаю массив после запроса к базе данных.В случае сбоя транзакции внешняя программа не может быть изменена на этом этапе.Все это должно быть сделано в методе on_commit()
.
Вопрос: как я могу сделать этот массив доступным для внешней программы?
Я новичок в C ++ и понимаю, что это довольно простой вопрос.