Блог пользователя CPharderthanDarkSouls

Автор CPharderthanDarkSouls, история, 5 лет назад, По-английски

In a program if i use /* int *a = new int [n] / (and using delete at the end), the compiler throws sigbart error but if i use / int a[n] */ it compiles successfully ,Why ?

program : https://ideone.com/e.js/lZfJuL

  • Проголосовать: нравится
  • +10
  • Проголосовать: не нравится

»
5 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится

True statement is : typename name[size of array];

»
5 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

If anyone knows the reason, I would also like to know. I have also faced this problem many times. Nowadays, I am using vector everywhere to prevent all array shit in c++.

»
5 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

If you use new[] to allocate memory, you must use delete[] (not delete) to free it.