You should not use calloc -- especially not in templates. calloc is similar to malloc. Neither one of them will call the constructor of whatever object you're allocating, meaning they will only work for POD types. If you try to calloc something like a string, or some other complex type it will fail spectacularly.
In C++, stick with new[] and delete[] for dynamic allocation (or better yet, just use something like vector). malloc/calloc are remnants of C.