gpt4 book ai didi

C++ : deleting different static and dynamic pointer type

转载 作者:行者123 更新时间:2023-11-30 01:10:07 24 4
gpt4 key购买 nike

<分区>

我有一段愚蠢的代码,需要一些解释。

int main() {
int *ptr_i = new int[100];
char *ptr_c = (char *)ptr_i;
delete [] ptr_c;
return 0;
}

首先,我原以为这段代码会崩溃,但我认为它并没有崩溃,因为在这种情况下,分配器将跟踪要取消分配的字节数。我也在这段代码上运行了 valgrind,它没有显示内存泄漏。我需要澄清以下内容:

  1. 如果处理 POD 数据类型,char 的 c'tor 与 int 的 c'tor 有何不同?

  2. 除了编码规范之外,这段代码还会导致什么其他问题?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com