این کار چند راه داره
راه اول استفاده از list ه. من نمیدونم آردویینو بطور کامل از توابع C++ استفاده میکنه یا نه. ولی اگر بکنه با این میشه :
list یه کلاسه که مثل آرایه ها، این امکان رو میده که یه لیست درست کنیم و هر عنصری میخوایم توش بذاریم. برعکس آرایه که نمیشه یه عضو رو حذف کرد، تو لیست میشه یه عضو رو چه بر اساس مقدارش یا چه بر اساس جاش توی لیست حذف کرد و لیست بصورت خودکار تغییر سایز میده.
این یه کد نمونه هست. تو حلقه ی for ، بجای اینکه مشخص کنیم دقیقا 10 بار تکرار میشه، با کمک auto(بصورت اتوماتیک نوع متغییر رو انتخاب میکنه) بهش میگیم که از ابتدای لیست (list.cbegin) تا انتهای لیست (list.cend) اسکن کنهکد:std::list<int> mylist = {5,10,15,20}; std::cout << "mylist contains:"; for (auto it = mylist.cbegin(); it != mylist.cend(); ++it) کد مربوط به عملیات رندوم روی عنصر شماره it از لیستی به نام mylist حذف مورد it
بعد با حذف کردن اون عنصر از لیست با کمک mylist.remove(مقدار عنصری که میخوایم حذفش کنیم. مثلا it یا مثلا 11)
لیست بصورت خودکار تغییر سایز پیدا میکنه و تمام.
البته قبل از کار باید یه پشتیبان از لیست تهیه بکنیم که برای بارهای بعد مقدار لیست رو داشته باشیم.
مقدار دادن به لیست دقیقا مث مقدار دادن به آرایه س
list - C++ Reference


4 لایک
LinkBack URL
About LinkBacks



پاسخ با نقل قول