constructor the shared structure in-place
new(mCblk) audio_track_cblk_t(); placement new
1 #include <iostream> 2 #include <stdio.h> 3 #include <malloc.h> 4 5 class Student 6 { 7 private: 8 int age; 9 int grade; 10 public: 11 Student(void) 12 { 13 age = 5; 14 grade = 10; 15 } 16 17 ~Student(void) 18 { 19 printf("xx\n"); 20 } 21 }; 22 23 int main(void) 24 { 25 Student *pStudent = (Student*)malloc(sizeof(Student)); 26 char *p = (char*)pStudent; 27 28 int i = 0; 29 for(i = 0; i < sizeof(Student); i++) 30 *p++ = 0; 31 32 p = (char*)pStudent; 33 34 new(pStudent) Student(); 35 36 for(i = 0; i < sizeof(Student); i++) 37 { 38 printf("%u\n", (unsigned int)(*p) & off); 39 p++; 40 } 41 delete pStudent; 42 return 0; 43 } 44 45 x86结果: 46 5 47 0 48 0 49 0 50 10 51 0 52 0 53 0