В C++ все указатели надо проверять на null перед использованием. У вас явно какой-то указатель null.
Вот этот код ещё выглядит подозрительным:
allObj=new ball(0,this->height(),10);
gameBoard->scene()->addItem( ballObj->getBall());
Результат new присваивается одной переменной, а потом используется другая. Допускаю, что это опечатка.
Как я уже и писал выше, надо проверить результат вызова scene() на null (скорее всего, именно тут ошибка), равно как и сам gameBoard.
И ещё одно, вы должны понимать, что после вызова метода addItem(ballObj->getBall()), возвращённый объект перейдёт под управление сцены (об этом в документации написано) и может быть удалён в любой момент. При этом, кто должен удалить ballObj в вашем коде не ясно.
PS
Это не исключение.