কম্পিউটার টিউটোরিয়াল

C++-এ টেমপ্লেট ব্যবহার করে মাল্টিডাইমেনশনাল অ্যারের ডাইমেনশন প্রিন্ট

C++-এ টেমপ্লেট ফাংশন ওভারলোডিং ব্যবহার করে কম্পাইল-টাইমে মাল্টিডাইমেনশনাল অ্যারের ডাইমেনশন বের করা সম্ভব।

এলগরিদম

template() ফাংশন ব্যবহার করে অ্যারের বর্তমান আকার বের করা হয়।
তারপর রিকার্সিভলি কল করে শেষ ডাইমেনশন পর্যন্ত পৌঁছানো হয়।

উদাহরণ কোড

#include <iostream>
using namespace std;

// বেস কেস: ১D অ্যারে
template <typename T, size_t N>
void printDimensionsOfArray(const T (&a)[N]) {
    cout << N;
}

// রিকার্সিভ কেস: ২D বা অধিক ডাইমেনশন
template <typename T, size_t N, size_t M>
void printDimensionsOfArray(const T (&a)[N][M]) {
    cout << "Dimensions of the Array is: " << N << " x ";
    printDimensionsOfArray(a[0]);  // প্রথম রোয়া পাস করুন (size M)
}

int main() {
    int a[6][7];
    printDimensionsOfArray(a);
    return 0;
}

আউটপুট

Dimensions of the Array is: 6 x 7

ব্যাখ্যা:

  • প্রথম টেমপ্লেট ১D অ্যারে হ্যান্ডেল করে (সাইজ প্রিন্ট করে)۔
  • দ্বিতীয় টেমপ্লেট ২D অ্যারে হ্যান্ডেল করে — প্রথম ডাইমেনশন N প্রিন্ট করে, তারপর a[0] (যা T[M] টাইপ) রিকার্সিভলি পাস করে।
  • এটি কম্পাইল-টাইমে কাজ করে, রানটাইম ওভারহেড নেই।
  • ৩D বা অধিক ডাইমেনশনের জন্য আরও ওভারলোড যোগ করতে হয়।
  1. সি/সি++-তে মাল্টিডাইমেনশনাল অ্যারে ইনিশিয়ালাইজেশন (Initialization)

  2. সি-এ মাল্টিডাইমেনশনাল অ্যারে (Multidimensional Arrays)

  3. C++-এ new ব্যবহার করে ডাইনামিক ২D অ্যারে ঘোষণা

  4. C++-এ অ্যারে (Array) ব্যবহার করার পদ্ধতি