স্ট্যান্ডার্ড কোডে একটি সংকলন ত্রুটি পাওয়া বা কোনও অভ্যন্তরীণ সংকলন ত্রুটি অপটিমাইজারদের ভুল হওয়ার চেয়ে বেশি। তবে আমি শুনেছি কম্পাইলারগুলি লুপগুলি অপ্টিমাইজ করে কোনও পদ্ধতির কারণ হিসাবে কিছু পার্শ্ব প্রতিক্রিয়া ভুল করে ভুলে যায়।
এটি আপনার বা সংকলক কিনা তা জানতে আমার কোনও পরামর্শ নেই have আপনি অন্য সংকলক চেষ্টা করতে পারেন।
একদিন আমি ভাবছিলাম যে এটি আমার কোড কিনা বা না এবং কেউ আমার কাছে ভালগ্রাইন্ডের পরামর্শ দেয়। এটির সাথে আমার প্রোগ্রামটি চালাতে আমি 5 বা 10 মিনিট ব্যয় করেছি (আমি মনে করি)valgrind --leak-check=yes myprog arg1 arg2
এটি করেছে তবে আমি অন্যান্য বিকল্পের সাথে খেলেছি) এবং এটি তাত্ক্ষণিকভাবে আমাকে একটি লাইন দেখিয়েছিল যা একটি নির্দিষ্ট মামলার অধীনে চলেছিল যা সমস্যা ছিল। তারপরে কোনও অদ্ভুত ক্র্যাশ, ত্রুটি বা অদ্ভুত আচরণ না করেই আমার অ্যাপটি সহজেই চলেছিল ran ভালগ্রাইন্ড বা এর মতো অন্য কোনও সরঞ্জাম এটি আপনার কোড কিনা তা জানার একটি ভাল উপায়।
পার্শ্ব দ্রষ্টব্য: আমি একবার ভাবলাম কেন আমার অ্যাপ্লিকেশনটির কর্মক্ষমতা চুষছে। এটি দেখা গেল আমার সমস্ত পারফরম্যান্স সমস্যাগুলিও একই লাইনে ছিল। আমি লিখেছি for(int i=0; i<strlen(sz); ++i) {
। Sz কয়েক এমবি ছিল। কোনও কারণে সংযোজকটি প্রতিবার অপ্টিমাইজেশনের পরেও শক্ত হয়ে গেছে ran এক লাইন বড় জিনিস হতে পারে। পারফরম্যান্স থেকে ক্রাশ পর্যন্ত