Prefer efficient memory allocation patterns to improve performance. Key practices: 1. Use RAII containers (like Mat) instead of raw pointers to prevent memory leaks
Prefer efficient memory allocation patterns to improve performance. Key practices:
Example - Before:
// Inefficient allocation patterns
char* get_raw_data() {
return new char[size]; // Raw pointer, potential memory leak
}
std::vector<Mat> img_vec;
img_vec.push_back(img); // Potential reallocation
fcvPyramidLevel_v2 *framePyr = new fcvPyramidLevel_v2[2]; // Unnecessary heap allocation
Example - After:
// Efficient allocation patterns
Mat get_data() {
return Mat(size); // RAII handles cleanup
}
std::vector<Mat> img_vec(1, img); // Pre-allocated size
fcvPyramidLevel_v2 framePyr[2]; // Stack allocation for small arrays
Benefits:
Enter the URL of a public GitHub repository