কম্পিউটার

অন্যথায় এবং C++17-এ ইনিশিয়ালাইজার সহ বিবৃতি পরিবর্তন করুন


অনেক ক্ষেত্রে, আমাদের একটি ফাংশন দ্বারা প্রত্যাবর্তিত কিছুর মান যাচাই করতে হবে এবং এই মানের উপর ভিত্তি করে শর্তসাপেক্ষ অপারেশন করতে হবে। তাই আমাদের কোড নিচে দেওয়া হল -

// Some method or function
return_type foo(Params)
// Call function with Params and
// store return in var1
auto var1 = foo(Params);
if (var1 == /* some value */) {
   //Perform Something
} else {
   //Perform Something else
}

সব শর্তসাপেক্ষ if-else ব্লকে শুধু সাধারণ বিন্যাস অনুসরণ করুন। প্রথমে একটি ঐচ্ছিক প্রাথমিক বিবৃতি আছে যা ভেরিয়েবল সেট আপ করে, তারপর if-else ব্লক। সুতরাং সাধারণ if-else ব্লকটি নিম্নরূপ দেওয়া হল -

init-statement
if (condition) {
   // Perform or Do Something
} else {
   // Perform or Do Something else
}

C++17-এ init স্টেটমেন্টটিকে চিহ্নিত করা হয় বা একটি ইনিশিয়ালাইজার বলা হয় এবং আমরা এটিকে সরাসরি if-else ব্লকে নিম্নলিখিত পদ্ধতিতে রাখতে পারি

if (init-statement; condition) {
   // Perform Something
} else {
   // Perform Something else
}

শর্তযুক্ত ভেরিয়েবলের সুযোগ বর্তমান if-else ব্লকের মধ্যে সীমাবদ্ধ বা সীমাবদ্ধ। এটি আমাদের অন্য শর্তসাপেক্ষ ব্লকে একই নামের শনাক্তকারীকে পুনরায় ব্যবহার করার অনুমতি দেয়।

if (auto var1 = foo(); condition) {
   ...
}
else{
   ...
}
// Another if-else block
if (auto var1 = bar(); condition) {
   ....
}
else {
....
}

একই ক্ষেত্রে সুইচ কেস ব্লক পরিবর্তন বা আপডেট করা হয়েছে। আমরা এখন সুইচ বন্ধনীর ভিতরে একটি প্রাথমিক অভিব্যক্তি রাখতে পারি।

প্রাথমিক বিবৃতির পরে কেসগুলি পরীক্ষা করার জন্য কোন ভেরিয়েবল প্রয়োগ করা হচ্ছে তা আমাদের নির্দিষ্ট করতে হবে

switch (initial-statement; variable) {
   ....
   // cases
}

একটি সম্পূর্ণ প্রোগ্রাম

// Program to explain or demonstrate init if-else
// feature introduced in C++17
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
   // Fix or set up rand function to be implemented
   // later in program
   srand(time(NULL));
   // Before C++17
   int I = 2;
   if ( I % 2 == 0)
   cout << I << " is even number" << endl;
   // After C++17
   // if(init-statement; condition)
   if (int I = 4; I % 2 == 0 )
   cout<< I << " is even number" << endl;
   // Switch statement
   // switch(init;variable)
   switch (int I = rand() % 100; I) {
      default:
      cout<< "I = " << I << endl; break;
   }
}


  1. উদাহরণ সহ জাভাস্ক্রিপ্টে ট্রাই অ্যান্ড ক্যাচ স্টেটমেন্ট ব্যাখ্যা করুন।

  2. জাভাস্ক্রিপ্টে শর্তসাপেক্ষ বিবৃতি

  3. জাভাস্ক্রিপ্টে 0 এবং 1 সহ সংলগ্ন সাব্যারে

  4. সিএসএস এবং জাভাস্ক্রিপ্ট দিয়ে অন্ধকার এবং হালকা মোডের মধ্যে কীভাবে স্যুইচ করবেন?