01/10/2018, 14:52

Biến static pointer để dùng dynamic array trong C++

Hello
Mình có 1 class như sau. Trong class có 1 biến size lưu cỡ mảng, 1 con trỏ *p để cấp phát động trỏ đến 1 mảng int[size]. Thì biến static int *p khởi tạo bên ngoài class ntn nhỉ

class Test { 
private: 
   static int *p;
   static int size;
public: 
   static void show();
};
int Test::size = 0;
// how to init *p

Nhìn ngộ ngộ quá
Thank you

Tao Không Ngu. viết 17:07 ngày 01/10/2018

Gán băng null. Tuy chuẩn C

HelloWorld viết 17:08 ngày 01/10/2018

:v quên mất, gán = NULL là khởi tạo rồi, tks bác

viết 16:57 ngày 01/10/2018

// how to init *p

int* Test::p = nullptr;

đừng cấp phát động cho con trỏ, xài thẳng std::vector luôn đi

//trong file .h
class Test { 
private: 
   static std::vector<int> p;
public: 
   static void show();
};

//trong file .cpp
std::vector<int> T::p; //init
HelloWorld viết 17:06 ngày 01/10/2018

Em đang xây dựng 1 thư viện nho nhỏ, và em buid từ đầu a-z chỉ dùng mấy thư viện chuẩn hỗ trợ nhập xuất thôi ạ. Vì cũng học cả rồi, nên em tự cài đặt, ôn tập lại luôn ạ

viết 16:57 ngày 01/10/2018

rồi cũng phải viết lại mà ko xài new/delete thôi, từ đầu viết thẳng luôn ko cần new/delete cho rồi ~.~

Florastamine viết 17:01 ngày 01/10/2018

Vote bỏ NULL, dùng nullptr

Bài liên quan
0