اصطلاح حرفوں کا ایک ترتیب ترتیب کا مطلب ہے۔ C ++ میں کلاس کے کسی شے کا استعمال کرتے ہوئے حروف کی ترتیب کی نمائندگی کی جاسکتی ہے۔ جس کلاس کو ایسا کرنے کی تعریف فراہم کرتی ہے اس کو سٹرنگ کلاس کہا جاتا ہے۔ اسٹرنگ کلاس بائٹس کے ایک تسلسل کے طور پر حروف کو اسٹور کلاس اسٹور کرتی ہے جس میں سنگل بائٹ کردار تک رسائی کی اجازت دی جاتی ہے۔ C ++ میں منسلک حد سے متعلق دوہری حوالہ جات ہیں۔ اس 'اسٹرنگس ان سی ++' مضمون میں میں مندرجہ ذیل عنوانات پر گفتگو کروں گا۔
کیا استعمال کیا جاتا ہے؟
- اسٹرنگ کلاس اور کیریکٹر صف فرق
- C ++ میں اسٹرنگس کا اعلان اور ابتدا کریں
- C ++ میں اسٹرنگز پر آپریشنز
- سٹرنگ سائز
- سٹرنگ کانکنیٹیشن
- اسٹرنگز کو شامل کرنا
- تار تلاش کررہے ہیں
اسٹرنگ کلاس اور کیریکٹر صف فرق
سٹرنگ کلاس | کریکٹر ارے |
سٹرنگ کلاس ایک ایسی کلاس ہے جو ایسی اشیاء کی وضاحت کرتی ہے جو کرداروں کے دھارے کے طور پر پیش کی جاسکتی ہے | کریکٹر سرنی صرف ایک حرف کی صف ہے۔ |
تاروں کی صورت میں ، میموری کو متحرک طور پر مختص کیا جاتا ہے اس طرح طلب کے وقت چلنے پر زیادہ میموری مختص کی جاسکتی ہے | کردار صف کے سائز کو مستقل طور پر مختص کرنا پڑتا ہے لہذا ضرورت پڑنے پر رن میموری کے وقت زیادہ میموری مختص نہیں کی جاسکتی ہے |
اسٹرنگ کلاس متعدد فنکشنز کی وضاحت کرتی ہے جو تار پر کئی گنا کام کرنے کی اجازت دیتی ہے۔ | کریکٹر سرنی ڈور کو جوڑنے کے ل in بہت سے ان بلٹ افعال پیش نہیں کرتا ہے |
کریکٹر سرنی کے مقابلے میں عمل درآمد کے مقابلے میں اسٹرنگ سست ہیں۔ | ایک کردار سرنی کا نفاذ ہے تیز |
C ++ میں اسٹرنگس کا اعلان اور ابتدا کریں
C ++ میں سٹرنگ کا آغاز کرنا بہت آسان ہے! ہم مندرجہ ذیل طریقوں میں سے کوئی بھی استعمال کرسکتے ہیں۔
namespace std تار std_string کا استعمال کرتے ہوئے
یا
std :: سٹرنگ std_string
# نام کی جگہ ایس ٹی ڈی انٹ مین () {چار چہ [12] = {'ایچ' ، 'ای' ، 'ایل' ، 'ایل' ، 'او' ، '' ، 'بی' ، 'ی' ، '' کا استعمال شامل کریں ، 'c'، 'h'، '' st string st = 'ہیلو از st' std :: سٹرنگ std_st = 'ہیلو از std_st' cout<< ch << endl cout << st << endl cout << std_st << endl return 0 }
آؤٹ پٹ:
ہیلو بہ ch ch ہیلو از std_st
اس مثال میں ، ہم نے کردار صف (ch) اور سٹرنگ CL دونوں کو دکھایا ہےگدا (st اور std_st) ابتدائی طریقے۔ سب سے پہلے ، ہم نے ایک کریئر ارے ch [12] کی وضاحت کرکے کریکٹر ارے کا طریقہ استعمال کیا جس میں 12 عنصر شامل ہوتے ہیں اور ختم ہوجاتے ہیں۔ دوسرے حصے میں ، ہم نے سٹرنگ کلاس کا طریقہ استعمال کیا۔
C ++ میں اسٹرنگز پر آپریشنز
سٹرنگ کلاس استعمال کرنے کا فائدہ یہ ہے کہ ان میں جوڑ توڑ کے ل C C ++ میں بہت سے بلٹ میں کام ہوتے ہیں۔ یہ پروگرامنگ کو آسان اور موثر بناتا ہے۔ آئیے ہم کچھ اہم سٹرنگ ہیرا پھیری کے کام انجام دیتے ہیں اور کچھ مثالوں کو دیکھ کر ان کو سمجھتے ہیں۔
سٹرنگ سائز: سائز () اور لمبائی () دونوں طریقوں کا استعمال آبجیکٹ کے سائز کو واپس کرنے کے لئے کیا جاسکتا ہے۔
لاگت<< st.length() <آؤٹ پٹ:
11 11سٹرنگ مقابلہ: ہم دو یا زیادہ ڈوروں کو محض ان کے درمیان + آپریٹر استعمال کرکے جوڑ سکتے ہیں
سٹرنگ new_string = st + 'اور' + std_st cout<< new_string <آؤٹ پٹ:
ہیلو بذریعہ ST اور ہیلو از std_stاسٹرنگز کو شامل کرنا: .append (سٹرنگ) کلاس ممبر فنکشن کو سٹرنگ میں مخصوص کردار والے مقام پر سٹرنگ کو جوڑنے اور جوڑنے کے لئے استعمال کیا جاسکتا ہے۔ اگر کوئی پروگرامر str.append (str1، p، n) رکھتا ہے تو اس کا مطلب یہ ہے کہ سٹرنگ str1 میں پوزیشن p سے حروف کی تعداد تعداد کو str کے اختتام تک جوڑا جائے گا۔
سٹرنگ سی آر = 'مجھے سیکھنے سے لطف اندوز ہوتا ہے' اسٹرنگ = میں 'ازگر ، سی ++ ، یا سی' str.append (str1، 8، 3) cout<< str << endlآؤٹ پٹ:
مجھے C ++ سیکھنے سے لطف آتا ہےتار تلاش کرنا: ہم کسی دوسرے کے اندر موجود تار کی پہلی موجودگی کو تلاش کرنے کے لئے () ممبر فنکشن کا استعمال کرسکتے ہیں۔ تلاش کریں () پوزیشن پوز سے شروع ہونے والے تار تار کے اندر سوئی ڈھونڈیں گے اور انجکشن کے پہلے واقعہ کی پوزیشن لوٹائیں گے۔ فنکشن rfind () اسی طرح کام کرتا ہے ، سوائے اس کے کہ یہ گزرے ہوئے تار کی آخری صورت واپس کردے۔
طریقہ اوورلوڈنگ بمقابلہ طریقہ اوور رائڈنگتار haystack = 'ہیلو ورلڈ!' سٹرنگ انجکشن = 'o' cout<< haystack.find(needle)<آؤٹ پٹ:
4 4 7 4294967295پہلی cout کمانڈ آسانی سے '4' پرنٹ کرے گا جو گھاس کے تار میں 'o' کی پہلی واردات کا اشاریہ ہے۔ اگر ہم 'دنیا' میں 'او' چاہتے ہیں تو ، ہمیں پہلے واقعے کی نشاندہی کرنے کے لئے 'پوز' میں ترمیم کرنے کی ضرورت ہے۔ haystack.find (انجکشن ، 4) پھر 4 واپس آجائے گا ، جبکہ haystack.find (انجکشن ، 5) 7 دے گا۔
جاوا ڈبل انٹ میں تبدیل کرتا ہےNpos ایک خاص قدر ہے جس کی سائز_ٹائپ قسم کے ذریعہ نمائندگی کی زیادہ سے زیادہ قیمت کے برابر ہے۔ یہاں یہ 4294967295 ہے۔ عام طور پر ، یہ سٹرنگ انڈیکس کی توقع کرنے والے افعال کے ذریعہ سٹرنگ انڈیکیٹر کے آخر کے طور پر یا اسٹرنگ انڈیکس کو واپس کرنے والے افعال کے ذریعہ غلطی کے اشارے کے طور پر استعمال ہوتا ہے۔
یہ عام کوڈ str2 میں 'C ++' کے تمام واقعات کے لئے تار تلاش کرتا ہے اور ان کی پوزیشن پرنٹ کرتا ہے۔
سٹرنگ سی آر 2 = 'سی ++ ایک آبجیکٹ پر مبنی پروگرامنگ زبان ہے اور اس میں کلاسز ، وراثت ، کثیر انداز ، ڈیٹا تجریدی اور انکشیپولیشن شامل ہیں۔ سی ++ استثناء کی ہینڈلنگ ، اور فنکشن اوورلوڈنگ کی اجازت دیتا ہے جو سی سی ++ میں ممکن نہیں ہے ایک طاقت ور ، موثر اور تیز زبان ہے۔ ' (سٹرنگ :: سائز_ ٹائپ i = 0 ، ٹفائنڈ (tfind = wikistr.find ('C ++'، i))! = تار :: npos i = tfind + 1) d std :: cout<< 'Found occurrence of 'C++' at position ' << tfind << std::endl }آؤٹ پٹ:
پوزیشن پر 'C ++' کی موجودگی 0 پوزیشن پر 'C ++' کی موجودگی 132 پوزیشن 217 پر 'C ++' کی موجودگی پائی گئی# نام کی جگہ ایس ٹی کلاس بیس {عوام کا استعمال شامل کریں: کالعدم<< 'base class function 1n' } virtual void fun_2() { cout << 'base class function 2n' } virtual void fun_3() { cout << 'base class function 3n' } virtual void fun_4() { cout << 'base class function 4n' } } class derived : public base { public: void fun_1() { cout << 'derived class function 1n' } void fun_2() { cout << 'derived class function 2n' } void fun_4(int x) { coutfun_2 () // دیر سے بائنڈنگ (آر ٹی پی) پی ٹی آر-> فنی_3 () // دیر سے بائنڈنگ (آر ٹی پی) پی ٹی آر-> فنی_4 () // ابتدائی بائنڈنگ لیکن یہ فنکشن کال // غیر قانونی (غلطی پیدا کرتی ہے) ہے کیونکہ پوائنٹر // ہے بیس ٹائپ اور فنکشن // ڈریوڈ کلاس // p-> fun_4 (5) کی ہے} آؤٹ پٹ:
بیس کلاس فنکشن 1 اخذ کلاس فنکشن 2 بیس کلاس فنکشن 3 بیس کلاس فنکشن 4اس کے ساتھ ، ہم اسٹرنگس ان سی ++ میں اس مضمون کو ختم کردیں گے۔ مجھے امید ہے کہ آپ کو مختلف آپریشنوں کا اندازہ ہو گیا ہے جو اس پر انجام دے سکتے ہیں۔ اگر آپ مزید معلومات حاصل کرنا چاہتے ہیں تو ، ایک قابل اعتماد آن لائن سیکھنے والی کمپنی ، ایڈیورکا کے ذریعہ جاوا ٹریننگ دیکھیں۔ ایڈورکا کی تربیت اور سرٹیفیکیشن کورس آپ کو ہائبرنیٹ اور اسپرنگ جیسے جاوا کے مختلف فریم ورکوں کے ساتھ ساتھ جاوا کے دونوں بنیادی اور اعلی درجے کے تصورات کی تربیت کے لئے ڈیزائن کیا گیا ہے۔
ہمارے لئے ایک سوال ہے؟ برائے کرم اس بلاگ کے تبصرے سیکشن میں اس کا تذکرہ کریں اور ہم جلد از جلد آپ کے پاس مل جائیں گے۔