হ্যালো আমি Cppreferences.com এ এরকম অনেক উদাহরণ দেখেছি:
std::is_class<T>
std::is_integral
ইত্যাদি। আমি জানি যে আমি কোডটি চালনা করি উদাহরণস্বরূপ আমি পেয়েছি true
বা false
। তবে তাতে কী লাভ? উদাহরণস্বরূপ অবজেক্টটি ক্লাস টাইপের হয় না জেনে?
#include <iostream>
#include <type_traits>
struct A {};
class B {};
enum class C {};
int main()
{
std::cout << std::boolalpha;
std::cout << std::is_class<A>::value << '\n';
std::cout << std::is_class<B>::value << '\n';
std::cout << std::is_class<C>::value << '\n';
std::cout << std::is_class<int>::value << '\n';
}
আউটপুট:
true
true
false
false
আমি এই ব্যবহার করে একটি বাস্তব উদাহরণস্বরূপ উপর সব অনুসন্ধান করেছেন (
is_class
,is_integral
,is_arithmetic
, ...) কিন্তু সব টিউটোরিয়াল শুধুমাত্র আশাহীন উদাহরণ দেখাতে: শুধুমাত্রtrue
বাfalse
।এই টেম্পলেটগুলি ব্যবহার করে কেউ কি আমাকে একটি ছোট্ট দরকারী উদাহরণ দিয়ে সহায়তা করতে পারেন?
std::copy
। কি হবে যদি প্রকারেরstd::copy
, "সহজ" হয় একটি অ্যারের মতint
বাchar
? আপনি ব্যবহার করবেনmemcpy
, তাই না? সুতরাং আপনি কীভাবে বলবেন "যদি টাইপটি সহজ হয়, মেমকি ব্যবহার করুন, অন্যথায়" ধীর "লুপটি ব্যবহার করবেন?