উন্নয়নের সময় #ifdef ব্যবহার করার জন্য বিভিন্ন ধরণের আচরণের মধ্যে স্যুইচ করা কি ভাল অনুশীলন? উদাহরণস্বরূপ, আমি বিদ্যমান কোডের আচরণ পরিবর্তন করতে চাই, আচরণটি কীভাবে পরিবর্তন করতে হবে সে সম্পর্কে আমার বেশ কয়েকটি ধারণা রয়েছে এবং বিভিন্ন পদ্ধতির পরীক্ষা ও তুলনা করার জন্য বিভিন্ন বাস্তবায়নের মধ্যে পরিবর্তন করা প্রয়োজন। সাধারণত কোডে পরিবর্তনগুলি জটিল এবং বিভিন্ন ফাইলে বিভিন্ন পদ্ধতিতে প্রভাব ফেলে।
আমি সাধারণত বেশ কয়েকটি সনাক্তকারী পরিচয় করিয়ে দিই এবং এর মতো কিছু করি
void foo()
{
doSomething1();
#ifdef APPROACH1
foo_approach1();
#endif
doSomething2();
#ifdef APPROACH2
foo_approach2();
#endif
}
void bar()
{
doSomething3();
#ifndef APPROACH3
doSomething4();
#endif
doSomething5();
#ifdef APPROACH2
bar_approach2();
#endif
}
int main()
{
foo();
bar();
return 0;
}
এটি দ্রুত ভিন্ন পদ্ধতির মধ্যে দ্রুত পরিবর্তন করতে এবং উত্স কোডের কেবলমাত্র একটি অনুলিপিতে সবকিছু করতে দেয় do এটি কি উন্নয়নের জন্য একটি ভাল পদ্ধতির বা আরও ভাল অনুশীলন আছে?
#ifdef
যদি ব্লকটি বন্ধ থাকে তবে ব্লকগুলির কোনও কিছুর মূল্যায়ন করে না । আমরা এমন ক্ষেত্রে চলে এসেছি যেখানে কোডগুলি সহজেই বাসি হয়ে যায় এবং আপনি যদি নিয়মিতভাবে সমস্ত পাথ তৈরি না করেন তবে সংকলন করতে পারে না।
#ifdefs
কম অসুবিধে করার কিছু উপায় দেয় la