C/C++ স্ট্রিংয়ের ওয়ার্ডগুলো ইটারেট করার জন্য একক "ইলিগ্যান্ট" পদ্ধতি নেই। সবচেয়ে রিডেবল পদ্ধতিই কাউকে সবচেয়ে ইলিগ্যান্ট মনে হয়, অন্যদের জন্য পারফরম্যান্স। এখানে ২টি পদ্ধতি দেওয়া হলো যেগুলো ব্যবহার করে আপনি এটি অর্জন করতে পারেন। প্রথম পদ্ধতিতে স্ট্রিংস্ট্রিম ব্যবহার করে স্পেস দিয়ে আলাদা করা ওয়ার্ডগুলো পড়া হয়। এটি কিছুটা সীমাবদ্ধ কিন্তু সঠিক চেক দিলে ভালো কাজ করে। উদাহরণ:
উদাহরণ কোড
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;
int main() {
string str("Hello from the dark side");
string tmp; // প্রতিটি ইটারেশনে ওয়ার্ড সংরক্ষণের জন্য স্ট্রিং
stringstream str_strm(str);
vector<string> words; // ওয়ার্ডগুলো ধারণ করার ভেক্টর
while (str_strm >> tmp) {
// tmp-এর জন্য সঠিক চেক দিন (যেমন খালি কিনা)
// সিম্বল (!, ., ? ইত্যাদি) হटান
// সবশেষে পুশ করুন
words.push_back(tmp);
}
for (int i = 0; i < words.size(); i++)
cout << words[i] << endl;
}আউটপুট
Hello from the dark side