C++最危险的特性是什么?

for*_*ran 10 c++ language-features

我听过很多次Bjarne Stroustrup的短语"C++让你更难以用脚射击自己;但是当你这样做时,它会把整条腿拉下来"而且我真的不知道它是否像它一样可怕声音.

在使用C++进行编程时,您遇到过的最糟糕的事情(或者更恰当地说,对您的软件来说)是什么?例如,哪种方式比普通C更危险?

mmr*_*mmr 11

delete [] array;
Run Code Online (Sandbox Code Playgroud)

有时会成为

delete array;
Run Code Online (Sandbox Code Playgroud)

在一个不知道的人的手中.跟踪这个错误可能会非常糟糕,并且当你做malloc和free时不会发生.


SQL*_*ace 7

缓冲区溢出必须是c和c ++中最危险的东西.这也是微软宣布他们已将memcpy()添加到其禁用功能列表中的原因

多重继承是另一种


edu*_*ffy 5

虚拟析构函数要求很容易让新来者错过(尽管我认为大多数编译器足够聪明,可以指出这一点).