78 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Map
 | |
| localeTitle: خريطة
 | |
| ---
 | |
| ## مقدمة من الخريطة
 | |
| 
 | |
| `map` عبارة عن حاوية ربطية تخزن العناصر في زوج القيمة الرئيسية. مثلما هو الحال في `Java` لديك مجموعة ، مجموعة النقابي في PHP وهلم جرا.
 | |
| 
 | |
| ## فوائد استخدام الخريطة
 | |
| 
 | |
| *   يخزن فقط مفاتيح فريدة من نوعها وهذا أيضا في ترتيب مفروض على أساس معايير الفرز المخصصة لها.
 | |
| *   بما أن المفاتيح في ترتيب مفروز ، فإن عنصر البحث في الخريطة من خلال المفتاح سريع جدًا ، أي أنه يستغرق وقت لوغاريتمي.
 | |
| *   في `map` سيكون هناك قيمة واحدة فقط مرفقة بكل مفتاح.
 | |
| *   `map` يمكن استخدامها كمصفوفات ارتباطية.
 | |
| *   قد يتم تنفيذه باستخدام أشجار ثنائية متوازنة.
 | |
| 
 | |
| هنا مثال:
 | |
| 
 | |
|  `#include <iostream> 
 | |
|  #include <map> 
 | |
|  
 | |
|  using namespace std; 
 | |
|  
 | |
|  int main (){ 
 | |
|   map<char,int> first; 
 | |
|  
 | |
|   //initializing 
 | |
|   first['a']=10; 
 | |
|   first['b']=20; 
 | |
|   first['c']=30; 
 | |
|   first['d']=40; 
 | |
|  
 | |
|    map<char, int>::iterator it; 
 | |
|    for(it=first.begin(); it!=first.end(); ++it){ 
 | |
|       cout << it->first << " => " << it->second << '\n'; 
 | |
|    } 
 | |
|  
 | |
|   return 0; 
 | |
|  } 
 | |
| ` 
 | |
| 
 | |
| انتاج:
 | |
| 
 | |
|  `a => 10 
 | |
|  b => 20 
 | |
|  c => 30 
 | |
|  d => 40 
 | |
| ` 
 | |
| 
 | |
| ## خلق كائن الخريطة
 | |
| 
 | |
| `map<string, int> myMap;`
 | |
| 
 | |
| ## إدراج
 | |
| 
 | |
| إدخال البيانات مع إدراج وظيفة العضو.
 | |
| 
 | |
|  `myMap.insert(make_pair("earth", 1)); 
 | |
|  myMap.insert(make_pair("moon", 2)); 
 | |
| ` 
 | |
| 
 | |
| يمكننا أيضًا إدخال البيانات في خريطة std :: using operator \[\] ie
 | |
| 
 | |
| `myMap["sun"] = 3;`
 | |
| 
 | |
| ## الوصول إلى عناصر الخريطة
 | |
| 
 | |
| للوصول إلى عناصر الخريطة ، يتعين عليك إنشاء أداة إعادة تهيئة لها. وهنا مثال على النحو المذكور من قبل.
 | |
| 
 | |
|  `map<char, int>::iterator it; 
 | |
|  for(it=first.begin(); it!=first.end(); ++it){ 
 | |
|   cout << it->first << " => " << it->second << '\n'; 
 | |
|  } 
 | |
| ` 
 | |
| 
 | |
| هنا يمكنك معرفة المزيد عن الخريطة: [cpluspluc\_map](http://www.cplusplus.com/reference/map/map/map/)
 | |
| 
 | |
| ملاحظة: كل التعليمات البرمجية في المثال في إصدار C ++ 11. يمكنك معرفة المزيد عن إصدار C ++ [هنا](http://en.cppreference.com/w/cpp/compiler_support) |