[英]C++ char[] memory leak?
我是C ++的新手(從Java移植),我無法理解代碼中是否存在內存泄漏。
這是我的代碼的基礎(更加復雜,我將重要的地方帶到了內存可能泄漏的地方)
char message[15000];
char allMessages[102400];
int allMessagesCounter;
int main() {
connect() \\this works just fine
openThreadAndGetAllMessages() \\ here I get each time a message to my message char array and concatenate it into allMessages array using allMessagesCounter
cout << allMessages;
disconnect() \\works just fine as well
}
我的問題是,我需要釋放message []和allMessages []嗎?
謝謝!
否。通常,在C ++中,如果使用關鍵字new
則以后也應該delete
。 您的變量是靜態分配的,不需要刪除。
不,您不會,因為它們不是動態分配的。 如果內存是用new
分配的,則只需要調用delete
:
int *a = new int [5]; //must call delete [] or memory leak
int b [5]; //no need
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.