dcsimg
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: Advanced
Apr 21, 1999

WEBINAR:

On-Demand

Building the Right Environment to Support AI, Machine Learning and Deep Learning


Construct an Object on a Pre-Allocated char Array

The memory buffer returned by operator new is guaranteed to have the suitable alignment properties for any type object. This property enables you to construct objects on such a pre-allocated char array. For example:
 
#include <new>
#include <iostream>
#include <string>
using namespace std;

class Employee{ /*...*/};

void f(){  
  char * pc = new char[sizeof(Employee)];
  Employee *pemp = new (pc) Employee;  //construct on properly aligned char array
  //...use pemp
  pemp->Employee::~Employee(); //explicit destruction
  delete [] pc;
} 
Danny Kalev
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Thanks for your registration, follow us on our social networks to keep up-to-date