Comment créer une instance d'une structure en C ++?

La question est un "violation d'Accès de l'écriture de l'emplacement 0x00000000" message d'erreur juste après que j'ai initialiser le bk variable NULL. Je suppose que je devrais réserver de la mémoire de l'espace à l'avance pour attribuer NULL ( quelque chose comme Book bk = new Book(); ) mais je n'ai pas été en mesure de comprendre comment le faire en C++ jusqu'à maintenant.

Livre.h

#ifndef Book_H
#define Book_H

struct _book;
typedef _book* Book;

Book CreateBook(unsigned int pageNum);

Book.cpp

#include "Book.h"
#include <iostream>

#ifndef Book_CPP
#define Book_CPP

using namespace std;

struct _book
{
    int pageNum;
};

Book CreateBook( unsigned int pageNum){

    Book bk = NULL; 

    bk->pageNum = pageNum;

    return bk;
};

source d'informationauteur G21