#include<iostream> #include<assert.h> using namespace std; class SeqList { public: SeqList(int capacity = 10) { array = (int*)malloc(sizeof(int) * capacity); assert(array); _capacity = capacity; _size = 0; } private: int* array; int _size; int _capacity; }; void TestSeqList() { SeqList s; } int main() { SeqList s(100); return 0; }
#include<iostream> #include<assert.h> using namespace std; class SeqList { public: SeqList(int capacity = 10) { cout << "SeqList(int):" << this << endl; array = (int*)malloc(sizeof(int) * capacity); assert(array); _capacity = capacity; _size = 0; } //析构函数 ~SeqList() { if (array) { free(array); _capacity = 0; _size = 0; } cout << "~SeqList():" << this << endl; } private: int* array; int _size; int _capacity; }; void TestSeqList() { SeqList s; } int main() { SeqList s(100); return 0; }
#include<iostream> #include<string.h> using namespace std; class String { public: String(const char* str = "jack") { _str = (char*)malloc(strlen(str) + 1); strcpy(_str, str); } ~String() { cout << "~String()" << endl; free(_str); } private: char* _str; }; class Person { private: String _name; int _age; }; int main() { Person p; return 0; }