Nếu tôi có mã mà thông thường sẽ hoạt động như thế này:Gửi shared_ptr cho OpenGL?
char* log = new char[logLength];
glGetProgramInfoLog(..., ..., log)
//Print Log
delete [] log;
Làm thế nào tôi có thể đạt được kết quả tương tự với C++ 11 thông minh con trỏ? Ai biết được điều gì có thể xảy ra trước khi tôi có cơ hội xóa bộ nhớ đó.
Vì vậy, tôi đoán tôi cần downcast cho một con trỏ kiểu C?
bằng cách này các con trỏ thông minh không phải là C++ 11 độc quyền ... – user1797612
này không trả lời câu hỏi của bạn, nhưng tôi chỉ đơn giản là sẽ sử dụng một 'vector' như trong [ví dụ này] (https: //github.com/progschj/OpenGL-Examples/blob/master/01shader_vbo1.cpp#L49). –