Если вам нужно, чтобы он был непрерывным, вы можете настроить setTimeinterval следующим образом
<?php
setInterval(function (){
$('div').animate({width: 'toggle'});
},200);
?>
Я не понимаю разницу между malloc и new
blockquote>Вам необходимо прочитать гораздо больше о C ++ , например, небольшая книга по программированию на C ++ и хороший справочный сайт по C ++ . Да, C ++ - очень сложный язык (вам понадобятся годы работы, чтобы освоить его). Позже вы можете погрузиться в стандарт C ++ 11 n3337 (или более поздний стандарт C ++). Вам, безусловно, нужно точно точно понимать роль конструкторов и деструкторов (и объяснять, что это занимает много страниц, гораздо больше, чем можно разумно ожидать в любом ответе StackOverflow ).
Вам нужно иметь код ваших конструкторов для выполнения (и это делается с
new
, но не сmalloc
) - и позже деструкторы также должны быть выполнены, прежде чем освободить память. Деструкторы называютсяdelete
(и во многих других случаях), но, конечно, неfree
. Читайте также о правиле из пяти и о RAII .Вы должны, когда это возможно, предпочитать использовать умные указатели . Иногда (например, для циклических ссылок) их недостаточно.
Бояться неопределенного поведения .
Инструмент valgrind полезен для поиска ошибок, связанных с памятью. Вы также должны скомпилировать все предупреждения и отладочную информацию, поэтому
g++ -Wall -Wextra -g
с GCC . Вы также можете использовать статические анализаторы исходного кода, такие как clang-analyzer или Frama-C . Использование их может потребовать большого опыта; нет серебряной пули .Ваш
struct Record_array
неправ: предпочитаете использоватьstd::vector<Record>
. Узнайте больше о стандартных контейнерах C ++ .Конструктор вашего
Record
будет вызывать конструктор изstr1
и изstr2
(чтобы он, конструктор изstd::string
-s применялся к двум разным местоположениям). Если вы не вызываете этот конструкторRecord
,str1
иstr2
останутся в неопределенном состоянии (поэтому у вас будет некоторое неопределенное поведение , как только вы их используете).Основное различие между
[1 165] PS. На практике вы никогда не должны использоватьmalloc
и amp;free
(для C) иnew
иdelete
(для C ++) - это способ привлечения конструкторов и деструкторов. Конечно,malloc
& amp;free
игнорируют их, но неnew
& amp; [+1121]. Отказ выделения памяти (например, когда виртуальная память исчерпана) также обрабатывается по-другому.malloc
в коде C ++ , за исключением - только в редких случаях - при определении своего собственногоoperator new
. Потому чтоmalloc
не вызывает конструкторы C ++ (ноnew
делает). Также, пожалуйста, поймите, что C и C ++ - это разные языки программирования , иmalloc
для C, а не C ++. Многие реализации стандартной библиотеки C ++ используютmalloc
в своей реализации стандарта::operator new
и используютfree
в своих::operator delete
.