#vector #operator
🔵وکتور(vector)
🔹تابع Operator[ ]
عملگر [ ] مثل اندیس داخل آرایه ها عمل می کند و همین عملگر باعث شباهت وکتور و آرایه هاست. ما به دو روش می توانیم از اندیس برای دسترسی به عناصر وکتور استفاده کنیم اولی که همان روش معمولی آرایه هاست :
و روش دیگر هم استفاده از متد operator[ ]( ) است :
این دو روش هیچ تفاوتی ندارند.
عملکرد این عملگر با متد at کاملا مشابه است ولی اگر ما یک مقداری که در محدوده ی وکتور نیست (مثلا منفی است، سه یا یک مقداری بیشتر از تعداد عناصر داخل وکتور ) به متد at بدهیم این متد یک خطای out_of_range را ست می کند ولی عملگر [ ] مقدار 0 را به ما می دهد.
🔹پارامتر ها:
🔻مفهوم N:
موقعیت یا اندیس عنصر داخل وکتور که البته از 0 شروع می شود نه از 1
Output:
0 1 2 3 4 5 6 7 8 9 10
34
همان طور که می بینید با این عملگر می توانیم هم مقداری را بخوانیم هم مقداری را تغییر بدهیم، کاملا شبیه آرایه ها.
🔰ترجمه شده ازسایت www.cplusplus.com
@learncpp
🔵وکتور(vector)
🔹تابع Operator[ ]
reference operator[ ] (size_type n);const_reference operator[ ] (size_type n) const;عملگر [ ] مثل اندیس داخل آرایه ها عمل می کند و همین عملگر باعث شباهت وکتور و آرایه هاست. ما به دو روش می توانیم از اندیس برای دسترسی به عناصر وکتور استفاده کنیم اولی که همان روش معمولی آرایه هاست :
Vec[4]و روش دیگر هم استفاده از متد operator[ ]( ) است :
Vec.operator[ ](4)این دو روش هیچ تفاوتی ندارند.
عملکرد این عملگر با متد at کاملا مشابه است ولی اگر ما یک مقداری که در محدوده ی وکتور نیست (مثلا منفی است، سه یا یک مقداری بیشتر از تعداد عناصر داخل وکتور ) به متد at بدهیم این متد یک خطای out_of_range را ست می کند ولی عملگر [ ] مقدار 0 را به ما می دهد.
🔹پارامتر ها:
🔻مفهوم N:
موقعیت یا اندیس عنصر داخل وکتور که البته از 0 شروع می شود نه از 1
#include <iostream>
#include <vector>
using namespace std;
int main( )
{vector<int>a;
for(int i=0;i<=10;i++)
a.push_back(i);
for(int j=0;j<=10;j++)
cout<<a[j]<<"\t";
cout<<endl;
a[2]=34;
cout<<a[2]<<endl;
return 0;
}
Output:
0 1 2 3 4 5 6 7 8 9 10
34
همان طور که می بینید با این عملگر می توانیم هم مقداری را بخوانیم هم مقداری را تغییر بدهیم، کاملا شبیه آرایه ها.
🔰ترجمه شده ازسایت www.cplusplus.com
@learncpp
#vector #operator
🔵وکتور(vector)
🔹تابع = operator
چرا سی پلاس باید عملگر + رو برای وکتور آورلود کند؟ دلیل آن این است که ما وقتی می خواهیم از عملگر + برای انتصاب وکتور ها استفاده کنیم باید چیزی بیشتر از یک متغیر کپی شود در واقع ما می خواهیم یک کلاس را در یک کلاس دیگر کپی کنیم ولی نه هر گونه کپی کردنی باید آن کپی طوری باشد که می خواهیم
🔹عملگر + سه آورلود دارد
🔻1)مفهوم Copy :
این متد کل محتویات یک وکتور را کپی می کند در یک وکتور دیگر یعنی در واقع کل محتویات وکتور x را کپی می کند در یک وکتور جدید
🔻2)مفهوم Move :
این متد کل محتویات یک وکتور را منتقل می کند به یک وکتور دیگر
🔻3)مفهوم Initializer list :
این هم یک نوع داده ای که مشخص نیست را می ریزد در یک وکتور
🔹پارامتر ها :
🔻مفهوم X :
همان وکتوری که قرار است کپی یا منتقل شود
🔻مفهوم Li :
این هم همان لیستی است که نوع آن مشخص نیست
Output:
Size of foo: 0
Size of bar: 3
متد size( ) تعداد عناصر داخل وکتور را بر می گرداند
🔰ترجمه شده از سایت
www.cplusplus.com
@Learncpp
🔵وکتور(vector)
🔹تابع = operator
🔹copy (1)
vector& operator= (const vector& x);
🔹move (2)
vector& operator=(vector&& x);
🔹initializer list (3)
vector& operator=(initializer_list<value_type> il);
چرا سی پلاس باید عملگر + رو برای وکتور آورلود کند؟ دلیل آن این است که ما وقتی می خواهیم از عملگر + برای انتصاب وکتور ها استفاده کنیم باید چیزی بیشتر از یک متغیر کپی شود در واقع ما می خواهیم یک کلاس را در یک کلاس دیگر کپی کنیم ولی نه هر گونه کپی کردنی باید آن کپی طوری باشد که می خواهیم
🔹عملگر + سه آورلود دارد
🔻1)مفهوم Copy :
این متد کل محتویات یک وکتور را کپی می کند در یک وکتور دیگر یعنی در واقع کل محتویات وکتور x را کپی می کند در یک وکتور جدید
🔻2)مفهوم Move :
این متد کل محتویات یک وکتور را منتقل می کند به یک وکتور دیگر
🔻3)مفهوم Initializer list :
این هم یک نوع داده ای که مشخص نیست را می ریزد در یک وکتور
🔹پارامتر ها :
🔻مفهوم X :
همان وکتوری که قرار است کپی یا منتقل شود
🔻مفهوم Li :
این هم همان لیستی است که نوع آن مشخص نیست
#include <iostream>
#include <vector>
using namespace std;
int main ( )
{vector<int> foo(3,0);
vector<int> bar(5,0);
bar=foo;
foo=vector<int>();
cout<<"Size of foo: "<<int(foo.size( ))<<'\n';
cout<<"Size of bar"<<int(bar.size( )) <<'\n';
return 0;
}
Output:
Size of foo: 0
Size of bar: 3
متد size( ) تعداد عناصر داخل وکتور را بر می گرداند
🔰ترجمه شده از سایت
www.cplusplus.com
@Learncpp
#vector
📚فهرست آموزش کتابخانه vector(وکتورها)
♦️وکتورچیست
#vector
t.me/Learncpp/550
♦️توضیحات بیشتر درباره وکتور
t.me/Learncpp/551
#pop_back
t.me/Learncpp/552
#push_back
t.me/Learncpp/553
#insert
1. t.me/Learncpp/556
2. t.me/Learncpp/557
#erase
t.me/Learncpp/558
#capacity
t.me/Learncpp/559
#clear
t.me/Learncpp/560
#size
t.me/Learncpp/563
#reserve
t.me/Learncpp/563
#resize
t.me/Learncpp/567
#max_size
t.me/Learncpp/572
#at
t.me/Learncpp/573
#operator
t.me/Learncpp/576
#Empty
t.me/Learncpp/582
#iterator
t.me/Learncpp/584
#Begin
t.me/Learncpp/588
#cbegin
t.me/Learncpp/589
#Rbegin
t.me/Learncpp/590
#crbegin
t.me/Learncpp/591
#End
t.me/Learncpp/595
#cend
t.me/Learncpp/596
#Rend
t.me/Learncpp/597
#crend
t.me/Learncpp/612
#Back
t.me/Learncpp/601
#Emplace
t.me/Learncpp/606
#Emplace_back
t.me/Learncpp/607
#operator
t.me/Learncpp/611
#Front
t.me/Learncpp/613
#swap
1. t.me/Learncpp/616
2. t.me/Learncpp/617
#data
t.me/Learncpp/621
#shrink_to_fit
t.me/Learncpp/625
#vector::vector
1. t.me/Learncpp/632
2. t.me/Learncpp/633
3. t.me/Learncpp/634
#assing
t.me/Learncpp/641
#relation_operator
t.me/Learncpp/652
📝ترجمه کتابخانه از سایت رسمی برنامه نویسان ++C
www.cplusplus.com
🔸کمک به بچه های سرطانی
💝@tabligh_cpp
🔹آموزش تخصصی ++C
🛡@Learncpp
📚فهرست آموزش کتابخانه vector(وکتورها)
♦️وکتورچیست
#vector
t.me/Learncpp/550
♦️توضیحات بیشتر درباره وکتور
t.me/Learncpp/551
#pop_back
t.me/Learncpp/552
#push_back
t.me/Learncpp/553
#insert
1. t.me/Learncpp/556
2. t.me/Learncpp/557
#erase
t.me/Learncpp/558
#capacity
t.me/Learncpp/559
#clear
t.me/Learncpp/560
#size
t.me/Learncpp/563
#reserve
t.me/Learncpp/563
#resize
t.me/Learncpp/567
#max_size
t.me/Learncpp/572
#at
t.me/Learncpp/573
#operator
t.me/Learncpp/576
#Empty
t.me/Learncpp/582
#iterator
t.me/Learncpp/584
#Begin
t.me/Learncpp/588
#cbegin
t.me/Learncpp/589
#Rbegin
t.me/Learncpp/590
#crbegin
t.me/Learncpp/591
#End
t.me/Learncpp/595
#cend
t.me/Learncpp/596
#Rend
t.me/Learncpp/597
#crend
t.me/Learncpp/612
#Back
t.me/Learncpp/601
#Emplace
t.me/Learncpp/606
#Emplace_back
t.me/Learncpp/607
#operator
t.me/Learncpp/611
#Front
t.me/Learncpp/613
#swap
1. t.me/Learncpp/616
2. t.me/Learncpp/617
#data
t.me/Learncpp/621
#shrink_to_fit
t.me/Learncpp/625
#vector::vector
1. t.me/Learncpp/632
2. t.me/Learncpp/633
3. t.me/Learncpp/634
#assing
t.me/Learncpp/641
#relation_operator
t.me/Learncpp/652
📝ترجمه کتابخانه از سایت رسمی برنامه نویسان ++C
www.cplusplus.com
🔸کمک به بچه های سرطانی
💝@tabligh_cpp
🔹آموزش تخصصی ++C
🛡@Learncpp
Telegram
Learning ©➕➕
#vector
🔵 وکتور(vector) چیست
خوب اول ما باید بدونیم وکتور یا همون بردار چیه تا بتونیم تشخیص بدیم که کجا باید ازش استفاده کنیم شما تا حالا حتما از آرایه ها استفاده کردید و حتما بزرگ ترین مشکل آرایه ها رو هم میدونید و اون مشکل همون ثابت بودن طول آرایه است،…
🔵 وکتور(vector) چیست
خوب اول ما باید بدونیم وکتور یا همون بردار چیه تا بتونیم تشخیص بدیم که کجا باید ازش استفاده کنیم شما تا حالا حتما از آرایه ها استفاده کردید و حتما بزرگ ترین مشکل آرایه ها رو هم میدونید و اون مشکل همون ثابت بودن طول آرایه است،…