i'm writing a program which requires a table, which i am emulating using a vector array, which i have made a custom class to create the table. however i cannot see any of the items in class table, except for vec_data. Why can't i access the public members in this class? for some reason, MSVC++ Intellisense can only see vec_data, nothing else.
template<class T>
class table
{
  private:
    T* vec_data;// initialize T
    struct tblarray : public T
    {
       std::vector<T> vecTbl[];
       bool operator[](unsigned int i) { return vecTbl[i]; } //redefine operator[] to accept unsigned int
       static void operator new(double n) //redefine new operator
       {
          void *d;
          if(n < 0) throw std::exception("Invalid Allocation to Negative number!");
          if(assert((d=malloc(n)) != 0) = 0) throw std::bad_alloc;
          return d;
      }
      void operator delete(void *d) //redefine delete operator
      {
        if(assert((free(p))) = 0) throw std::exception("Invalid Free of specified data!");
      }
      tblarray(const T&, unsigned int size) : T //one constructor
      {
        vecTbl = this.new std::vector<T>[reinterpret_cast<double>(size)];
      }
      ~tblarray() //one destructor
      {
        this.delete(vecTbl);
      }
}
public:
  table(const T&, unsigned int size) : T
  {
      this.tblarray.tblarray(T, size);
  }
  ~table()
  {
      this.tblarray.~tblarray();
  }
}
for instance:
table<int> tblOne; //legal
table.table(int, 123); //not legal(probably not legal anyways, but intellisense says the function does not exist?)
 
     
     
    