একক এক্সিকিউটেবলের বিকাশ করার সময় বিভিন্ন সি ++ সংকলক এবং ভাষার সংস্করণ ব্যবহার করা


15

আমাদের সংস্থা উপগ্রহ যোগাযোগের জন্য উত্স কোডের একটি বৃহত এবং খুব জটিল টুকরা কিনবে।

এটি সি ++ এ কোড করা হয়েছে এবং আমরা এটিতে সংযোজনগুলিও কোড করব, সি ++ তেও, আমাদের কোডটিকে একটি একক এক্সিকিউটেবল ইউনিটে ক্রয়কৃত কোডের সাথে যুক্ত করব।

  • কেন এটি প্রয়োজনীয় যে আমরা একই সংকলক এবং একই সংকলক সংস্করণটি কেনা কোড বিকাশের জন্য ব্যবহার করা হয়েছিল?

  • আমরা কেনা কোড হিসাবে সি ++ একই সংস্করণ ব্যবহার করা প্রয়োজন? যদি এটি 2014 ব্যবহার করে না, আমরা _ এর কয়েকটি বৈশিষ্ট্য ব্যবহার করতে চাই _ তবে বিভিন্ন সংস্করণ মিশ্রণে কিছু সমস্যা হতে পারে তা না।

তত্ত্বের ক্ষেত্রে অবশ্যই এটির বিশেষত ভাষার সংস্করণটি বিবেচনা করা উচিত নয়, তবে এটি অনুমেয় যে সংকলকটির বিভিন্ন সংস্করণ বিভিন্ন অবজেক্ট কোড তৈরি করবে, সম্ভাব্যভাবে সময় পার্থক্য ইত্যাদির দিকে পরিচালিত করবে ইত্যাদি etc.

আমাদের কী সচেতন হওয়া উচিত?


7
আমি আশা করি আপনি কেবল উত্স কোডটি কিনছেন না, তবে কিছু সমর্থন (যোগ্য ব্যক্তিদের দ্বারা) এতেও রয়েছে।
বেসাইল স্টারিনকিভিচ

1
প্রকৃতপক্ষে আমরা। এবং, অবশ্যই, আমি সরবরাহকারীরও এই প্রশ্নটি জিজ্ঞাসা করেছি। তবে আমি ভেবেছিলাম যে এটি এখানে একটি ভাল আলোচনার পয়েন্ট এবং ভবিষ্যতে অন্যদের জন্য একটি ভাল ভবিষ্যতের রেফারেন্স হবে।
মাওগ বলছে মনিকা

2
আপনি কি অসমর্থিত সংকলক ব্যবহার করে তৃতীয় পক্ষের কোডটি সংকলনের কথা বলছেন, বা আপনি বিভিন্ন সংকলক ব্যবহার করে কোডের বিভিন্ন অংশ সংকলন করার কথা বলছেন (যেমন আপনি যে কোডটি কিনছেন তার জন্য সমর্থিত একটি এবং নিজের কোডের জন্য একটি নতুন একটি এবং তারপরে তাদের সংযোগ)? নাকি প্রশ্নের part অংশের মধ্যে সিদ্ধান্ত নিচ্ছে?
jpmc26

3
এমনকি ভাষা সংস্করণটি গুরুত্বপূর্ণ হতে পারে, এফআইয়ের (পুরানো) সংকলক সংস্করণ এবং ছোট পার্থক্যগুলির তালিকার জন্য gcc.gnu.org/wiki/Cxx11AbiCompatibility দেখুন । অন্য কথায়: একই সংকলক, তবে বিভিন্ন সি ++ ভাষা সেটিং (সি ++ 03 এস সি ++ 11) বিষয়টি বিবেচনা করতে পারে।
আন্দ্রে

2
এবং এমএসভিসির সাথে, সাধারণভাবে লাইব্রেরি অবজেক্টগুলি (গতিশীল) লাইব্রেরির গণ্ডি পেরিয়ে যাওয়া নিরাপদ নয়। উদাহরণস্বরূপ দেখুন স্ট্যাকওভারফ্লো.com
আন্দ্রে

উত্তর:


9

কেন এটি প্রয়োজনীয় যে আমরা একই সংকলক এবং একই সংকলক সংস্করণটি কেনা কোড বিকাশের জন্য ব্যবহার করা হয়েছিল?

এটা নির্ভর করে.

সংকলকগণ একটি এবিআইকে লক্ষ্য করে কোড উত্পন্ন করে। কেউ কেউ একটি সাধারণ এবিআই ব্যবহার করছে (উদাহরণস্বরূপ, যদি আমি ভুল না হয়ে থাকি তবে ইটানিয়াম এবিআই নামে কলঙ্ক ++ এবং জি ++ উভয়ই লক্ষ্য) এবং আপনার উচিত - এমন কোনও বাগ থাকতে পারে যা আপনাকে এটি করতে বাধা দিতে পারে - অবজেক্ট কোডটি ব্যবহার করতে সক্ষম হবেন উভয়ই একই প্রোগ্রামে (অবশ্যই ধরে নেওয়া যে আপনি যে সংস্করণগুলি এবিআইয়ের একই সংস্করণকে লক্ষ্য করে ব্যবহার করছেন)। সংকলক সংস্করণের মধ্যে একইটি সত্য: কিছু অন্য সংস্করণের তুলনায় একই এবিআইকে আরও মনোযোগ দেয়। স্পষ্টতই, তাদের সকলেরই মাঝে মধ্যে একটি এবিআই পরিবর্তন দরকার হয় এবং তারা এটি সামঞ্জস্যহীন উপায়ে করতে বাধ্য হতে পারে। এবং স্পষ্টতই, ভাষা স্ট্যান্ডার্ডের পছন্দ মতো কিছু সেটিংসের এবিআইয়ের পছন্দতে প্রভাব থাকতে পারে।

তারপরে স্ট্যান্ডার্ড লাইব্রেরির বিষয়টি আছে। সংকলকগুলি (বা একই সংকলকের বিভিন্ন সংস্করণ) নিজেরাই একই এবিআই ব্যবহার করতে পারে এবং তবুও তাদের স্ট্যান্ডার্ড লাইব্রেরিটি বেমানান হতে পারে (এবং ঝনক ++ এর মতো কিছু সংকলক বেশ কয়েকটি স্ট্যান্ডার্ড লাইব্রেরির সাথে ব্যবহারযোগ্য হতে পারে)। এটি কাজ করতে সক্ষম হওয়া ইন্টারফেসে কী ব্যবহৃত হয় তার উপর নির্ভর করে।

অন্য কথায়, আপনি যে নির্দিষ্ট ক্ষেত্রে রয়েছেন তার জন্য আপনাকে খোঁড়াখুঁজি করতে হবে এবং আপনার কী ধরণের তথ্যের সন্ধান করা উচিত তার একটি সূচনা পয়েন্ট এবং উদাহরণ হিসাবে, এখানে লিবিস্টডিসি ++ (জি ++ দ্বারা ব্যবহৃত গ্রন্থাগার) সরবরাহ করা তথ্য রয়েছে এবং ঝাঁকুনি দ্বারা কিছু কনফিগারেশন ++)


10
এবিআই = অ্যাপ্লিকেশন বাইনারি ইন্টারফেস
সাইমন বি

2
এই উত্তরটি অবজেক্ট কোডের সামঞ্জস্যতা সম্পর্কে। ওপি সোর্স কোড কিনছে ।
মনিকার সাথে লাইটনেস রেস

7
@ লাইটনেসেসেসিনঅরবিট প্রশ্নটি একটি একক এক্সিকিউটেবল উত্পাদন করতে বিভিন্ন সংকলক ব্যবহার করার বিষয়ে কথা বলছে। এটি ভাবার পক্ষে বড় লাফ নয়, "তাদের অর্থ একটি সংকলক (সম্ভবত একটি 'সমর্থিত' একটি) এবং তাদের নিজস্ব কোডকে একটি পৃথক সংকলক (সম্ভবত আরও নতুন) দিয়ে সংকলন করা হয়েছে।" (এটি অবশ্যই আমি ওপিকে জিজ্ঞাসা করার জন্য বুঝতে পেরেছি; যদি আপনি এটি অন্যভাবে পড়েন তবে আপনি ওপিকে স্পষ্ট করে বলতে চাইতে পারেন)) সেই সম্ভাবনা বা অন্যান্য অনুরূপগুলিতে অবজেক্ট কোডের সামঞ্জস্যতা অত্যন্ত প্রাসঙ্গিক বলে মনে হয়।
jpmc26

1
@ জেএমপিএ 26: " ওপিটি জিজ্ঞাসা করতে এটি আমি অবশ্যই বুঝতে পেরেছি; আপনি যদি এটি অন্যভাবে পড়েন তবে আপনি ওপিকে স্পষ্ট করতে বলতে চাইতে পারেন" " ওপি স্পষ্টভাবে জানিয়েছে যে তাদের সংস্থা "সোর্স কোডের একটি বৃহত এবং খুব জটিল টুকরা কিনবে"। তদুপরি, "এই ধারণাটি অনুমানযোগ্য যে সংকলকটির বিভিন্ন সংস্করণ বিভিন্ন অবজেক্ট কোড উত্পন্ন করবে, সম্ভাব্যভাবে সময় পার্থক্যের দিকে পরিচালিত করবে", তারা কেনা পরিবর্তনগুলি সম্পর্কে জিজ্ঞাসা করছে যখন তারা কেবল তাদের নিজস্ব নয়, বিভিন্ন সরঞ্জামচেনের সাহায্যে কেনা কোডটি সংকলন করে। আমি মনে করি না যে সেখানে ব্যাখ্যা করার মতো অনেক জায়গা আছে!
মনিকার সাথে লাইটনেস রেস

8

কেন এটি প্রয়োজনীয় যে আমরা একই সংকলক এবং একই সংকলক সংস্করণটি কেনা কোড বিকাশের জন্য ব্যবহার করা হয়েছিল? আমরা কেনা কোড হিসাবে সি ++ একই সংস্করণ ব্যবহার করা প্রয়োজন?

এটি মূলত কোনও প্রযুক্তিগত প্রশ্ন নয়। আপনি আপনার চুক্তিতে কী লিখবেন সে সম্পর্কে এটি একটি আইনী প্রশ্ন। নিশ্চিত হয়ে নিন যে সফ্টওয়্যার বিক্রেতা আপনাকে তার পরিবেশে ব্যবহারযোগ্য হতে পারে তার গ্যারান্টিযুক্ত একটি সংস্করণ সরবরাহ করেছে । অন্যথায়, সর্বদা একটি পৃথক সংকলক, সংকলক সংস্করণ বা ভাষার সংস্করণ নিয়ে সমস্যায় পড়ার একটি নির্দিষ্ট ঝুঁকি থাকবে।

এটি বিশেষত গুরুত্বপূর্ণ যখন আপনি বদ্ধ উত্স হিসাবে উপাদান বা এর অংশগুলি ক্রয় করেন। এমনকি যদি আপনার সরবরাহকারী আপনি আপনার বর্তমান সংকলক পরিবেশের সাথে উপাদানটি ব্যবহার করতে পারবেন তার গ্যারান্টি দেয়, আপনি কি ভবিষ্যতে আরও নতুন সংকলক সংস্করণে স্যুইচ করতে চান তবে তিনি আপনাকে আপডেটগুলি সরবরাহ করবেন কি সে নিশ্চয়তা দেয়? যদি আপনার সম্পূর্ণ উত্স কোডটিতে অ্যাক্সেস না থাকে তবে নিজের দ্বারা কোনও সামঞ্জস্যতা সমস্যা সমাধান করার চেষ্টা করার ক্ষেত্রে আপনার সম্ভবত খুব ভাগ্য হবে না। এজন্য আপনার কেবল সফ্টওয়্যারটি কিনে নেওয়া উচিত নয়, তবে আপনার সরবরাহকারীর সাথে দীর্ঘমেয়াদী রক্ষণাবেক্ষণ চুক্তি সম্পর্কেও ভাবা উচিত।


এটি আসলে বেশ ভাল পরামর্শ!
টি। সর - মনিকা পুনরায়

এটা আসলেই, তবে হায়, অনেক দেরি হয়ে গেছে। বাসিলের মন্তব্যে আমি যেমন মন্তব্য করেছি, আমি সরবরাহকারীকেও এই প্রশ্ন জিজ্ঞাসা করেছি। তবে আমি ভেবেছিলাম যে এটি এখানে একটি ভাল আলোচনার পয়েন্ট হবে এবং ভবিষ্যতে অন্যদের জন্য ভবিষ্যতের একটি ভাল রেফারেন্স হবে
মাওগ বলেছেন মনিকা

4

আমাদের সংস্থা উপগ্রহ যোগাযোগের জন্য উত্স কোডের একটি বৃহত এবং খুব জটিল টুকরা কিনবে। এটি সি ++ এ কোড করা হয়েছে এবং আমরা এটিতে সংযোজনগুলিও কোড করব, সি ++ তেও, আমাদের কোডটিকে একটি একক এক্সিকিউটেবল ইউনিটে ক্রয়কৃত কোডের সাথে যুক্ত করব।

ভাল লাগছে!

কেন এটি প্রয়োজনীয় যে আমরা একই সংকলক এবং একই সংকলক সংস্করণটি কেনা কোড বিকাশের জন্য ব্যবহার করা হয়েছিল?

সাধারণত বলছি, না এটি প্রয়োজনীয় নয়। সি ++ এর উদ্দেশ্য হ'ল এই ধরণের জিনিসের উপর বিমূর্ততা হিসাবে কাজ করা, সুতরাং একটি ভালভাবে লিখিত সি ++ প্রোগ্রামটি আপনার টুলচেইনে ঠিক একইভাবে সংকলন করবে যেমন এটি মূল লেখকের মতো হয়েছিল, এবং ফলস্বরূপ প্রোগ্রামটির একই ফলাফল হবে। পারফরম্যান্স পরিবর্তিত হতে পারে, কারণ বিভিন্ন সংকলক বিভিন্ন জিনিসে ভাল, তবে প্রোগ্রামের মৌলিক আচরণ পরিবর্তন করা উচিত নয়।

তবে, খারাপভাবে লিখিত সফ্টওয়্যার বাস্তবায়ন-নির্দিষ্ট আচরণ বা এমনকি অপরিজ্ঞাত আচরণের উপর নির্ভর করতে পারে। এটি অন্তর্নির্মিত প্রকারগুলি সম্পর্কে বা প্ল্যাটফর্মের অন্তর্নিহিততা সম্পর্কে অনুমানগুলি তৈরি করতে পারে। এমনকি ভাল-লিখিত সফ্টওয়্যারটির অ-স্ট্যান্ডার্ড এক্সটেনশনগুলির উপর নির্ভর করা ছাড়াও আপনার পছন্দ থাকতে পারে যা আপনার নির্বাচিত সরঞ্জামচেনে পাওয়া যায় না, বা এটি এমনটি করতে পারে কারণ সময়কালের মধ্যে কোনও বহনযোগ্য স্তর যুক্ত করার জন্য কেবল সময় ব্যয় করার প্রয়োজন ছিল না। মূল প্রকল্প

শেষ পর্যন্ত, আপনার উত্স কোডটি কী জন্য লেখা হয়েছে তা লেখক / বিক্রেতাকে জিজ্ঞাসা করতে হবে। যদি তারা দাবি করে যে এটি বিশেষত ভিজ্যুয়াল স্টুডিও 2015 এর বিরুদ্ধে লেখা হয়েছে, এবং উইন্ডোজ এপিআই বৈশিষ্ট্যগুলির প্রয়োজন রয়েছে, আপনার সম্ভবত এটির সাথে থাকা উচিত। তবে যদি তারা দাবি করে যে এটি পোর্টেবল, মানক সি ++, তবে আপনার পছন্দসই সংকলকটি ব্যবহার করুন। আপনার ক্রয় চুক্তিতে একটি সমর্থন ব্যবস্থা অন্তর্ভুক্ত রয়েছে তা নিশ্চিত করুন যাতে বিক্রেতা যখন পড়ে থাকে তখন আপনি নিখরচায় সহায়তা পেতে পারেন।

আমরা কেনা কোড হিসাবে সি ++ একই সংস্করণ ব্যবহার করা প্রয়োজন? যদি এটি 2014 ব্যবহার না করে তবে আমরা এর কয়েকটি বৈশিষ্ট্য ব্যবহার করতে চাই, তবে বিভিন্ন সংস্করণ মিশ্রণে কিছু সমস্যা হতে পারে তা নাও।

সম্ভবত। হতে পারে.

সি ++ 03 বেশিরভাগ অংশের জন্য সামনের দিকে সামঞ্জস্যপূর্ণ তাই কোডটি যদি সি ++ 03 হয় তবে আপনার সমস্যা হওয়ার সম্ভাবনা কম। (যদিও কিছু টুইটের প্রয়োজন হতে পারে))

তবে সি ++ ১১ এবং সি ++ ১৪ এ প্রবর্তিত বৈশিষ্ট্যগুলি পশ্চাৎ-সামঞ্জস্যপূর্ণ নয় তাই যদি বিক্রেতা ব্যবহার করে, বলুন, সি ++ ১১ ল্যাম্বডাস ব্যবহার করেন এবং আপনি তাদের কোডটি সি ++ 03 সংকলকটিতে তৈরি করার চেষ্টা করেন, যা সবেমাত্র জিতেছে কাজ হবে না।

তত্ত্বের ক্ষেত্রে অবশ্যই এটির বিশেষত ভাষার সংস্করণটি বিবেচনা করা উচিত নয়, তবে এটি অনুমেয় যে সংকলকটির বিভিন্ন সংস্করণ বিভিন্ন অবজেক্ট কোড তৈরি করবে, সম্ভাব্যভাবে সময় পার্থক্য ইত্যাদির দিকে পরিচালিত করবে ইত্যাদি etc.

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

এবং অন্যেরা যা বলেছিল তা আমি প্রতিধ্বনিত করব: নিশ্চিত করুন যে আপনার কাছে কিছুটা সমর্থন অবলম্বন রয়েছে, যাতে তারা এই প্রশ্নগুলির কোনও প্রতিক্রিয়া ভুলভাবে উপস্থাপন করে (উদ্দেশ্যমূলকভাবে বা অন্যথায়) আপনি ফলস্বরূপ ব্যয়টি কাঁধে না ফেলে শেষ করেন।


লক্ষণীয় মূল্য: লিঙ্কিং পুরোপুরি সি ++ স্পেসিফিকেশনে আচ্ছাদিত নয়। কোডটি একাধিক কনফার্মিং সংকলকগুলিতে সংকলন করতে পারে, এটির নিশ্চয়তা নেই যে আপনি কেবল তাদের সাথে লিঙ্ক করতে পারেন এবং এটি কাজ করতে পারেন।
আমটন

1
@ কর্টআ্যাম্মন: আপনার অবশ্যই আবশ্যক বিতরণের সমস্ত উপাদানগুলি এমন একটি সরঞ্জামদণ্ডের সাথে সংকলন করতে হবে যা একটি এবিআইকে শেয়ার করে। এবিআই মানক সি ++ এর আওতার বাইরে। আমি মনে করি না যে ওপি কোনওভাবেই সরঞ্জাম মিশ্রণের বিষয়ে জিজ্ঞাসা করছে।
মনিকার সাথে লাইটনেস রেস

2

আপনি কোড লিঙ্ক করবেন না, আপনি সংকলিত অবজেক্ট ফাইল লিঙ্ক।

এই ক্ষেত্রে হ্যাঁ, বিভিন্ন সি ++ সংকলক (বা এমনকি ডিগগ / রিলিজ বিল্ডগুলির মতো সেটিংস) বা সেগুলির বিভিন্ন সংস্করণ বা স্ট্যান্ডার্ড লাইব্রেরি ব্যবহার করে যখন বাইনারি স্তরে ইন্টারেক্ট করবে এমন অংশগুলি বিল্ড করার সম্ভাবনা খুব বেশি অ্যাপ্লিকেশন যদি অংশগুলি একে অপরের সাথে সি এপিআই এর চেয়ে বেশি ব্যবহার করে যোগাযোগ করে।

পাত্রে বা ব্যতিক্রমগুলির মতো বৈশিষ্ট্যগুলি একই ইন্টারফেস সরবরাহ করে তবে, বাইনারি স্তরে, বিভিন্ন, বেমানান উপায়ে প্রয়োগ করা যেতে পারে।

সম্পূর্ণ কোডটি সংকলন করতে একটি পৃথক সংকলক ব্যবহার করা অবশ্য একটি আলাদা সমস্যা। প্রশ্নগুলি বিবেচনা করুন:

  • কোডটি কোন প্ল্যাটফর্ম / আর্কিটেকচারকে লক্ষ্য করে?
  • এটি কোন মানের জন্য লেখা হয়েছিল?
  • এটি কোনও অ-মানক সংকলক বৈশিষ্ট্য ব্যবহার করে?
  • কোডটিতে হার্ড-কোডেড প্ল্যাটফর্মের নির্দিষ্ট অনুমানগুলি রয়েছে (যেমন সর্বদা বিবেচনা করে যে পয়েন্টারগুলি 2 বাইট দখল করে?)

কোডে এমন কিছু অংশ থাকতে পারে যা অপরিবর্তিত আচরণের ফলস্বরূপ রয়েছে risk একটি সংকলক ব্যবহার করার সময় এগুলি সূক্ষ্মভাবে কাজ করছে বলে মনে হতে পারে তবে কোনও ভিন্ন ব্যবহার করার সময় রহস্যজনক উপায়ে ব্যর্থ হয়।


ওপি কোডটি তৈরি করছে, বিক্রেতা নয় not ওপি জিজ্ঞাসা করছে যে বিল্ড এনভায়রনমেন্ট (সিএফ। বিক্রেতারা) কীভাবে একই কোডবেসে প্রদত্ত কোড প্রজন্মকে প্রভাবিত করতে পারে।
মনিকার সাথে লাইটনেস রেস

1

কেন এটি প্রয়োজনীয় যে আমরা একই সংকলক এবং একই সংকলক সংস্করণটি কেনা কোড বিকাশের জন্য ব্যবহার করা হয়েছিল?

ঠিক আছে, সংকলক স্যুইচিং কিছু সমস্যা হতে পারে; বর্তমানে আমার সংস্থায়, আমরা কলং এবং এমএসভিসি ব্যবহার করি এবং একটি সংকলকটিতে আমাদের ত্রুটি রয়েছে যে অন্যটি সেটিকে চিহ্নিত করে না।

আমরা কেনা কোড হিসাবে সি ++ একই সংস্করণ ব্যবহার করা প্রয়োজন? যদি এটি 2014 ব্যবহার না করে তবে আমরা এর কয়েকটি বৈশিষ্ট্য ব্যবহার করতে চাই, তবে বিভিন্ন সংস্করণ মিশ্রণে কিছু সমস্যা হতে পারে তা নাও।

এটি 'প্রয়োজনীয় নয়, তবে অবশ্যই আপনার সংকলকটি আপনার ব্যবহার করতে চান এমন সি ++ সংস্করণ সমর্থন করবে। সি ++ গ্যারান্টি রেট্রো সামঞ্জস্যতা সমস্ত সংস্করণ থেকে শুরু হয়।


বেশ আমার চিন্তাভাবনা। সংকলক ভার্শনগুলি সম্পর্কে কী - যদি তারা জিসিসি সংস্করণ এক্স ব্যবহার করে এবং সর্বশেষতম x + 2 হয়, তবে?
মাওগ বলছেন মনিকা

1
ঠিক আছে যদি তারা আপনি যে সংকলকটি ব্যবহার করতে চান তার কোনও পুরানো সংস্করণ ব্যবহার করেন তবে কোনও সমস্যা নেই, কারণ অবহিত পদার্থের মতো কোনও জিনিস নেই, যদি তারা আপনার সংকলকটির নতুন সংস্করণ ব্যবহার করে তবে সমস্যা বাড়তে পারে।
LaboPie

কিন্তু কিভাবে? আমিও খুব পছন্দ করি না। তবে যে কোনও ধরণের সমস্যা দেখা দিতে পারে সে সম্পর্কে আপনি কি সচেতন?
মাওগ বলছেন মনিকা

তবে যে কোনও ধরণের সমস্যা দেখা দিতে পারে সে সম্পর্কে আপনি কি সচেতন? যদি তারা এমন কোনও ফাংশন ব্যবহার করে যা আমাদের সংকলক সমর্থন করে না, কোডটি সহজভাবে সংকলন করবে না।
LaboPie

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

1

সংকলক পরিবর্তন করার সময় একটি বড় সমস্যা হ'ল অনির্ধারিত আচরণ: আপনি যে কোডটি পেয়েছেন তা যদি অপরিজ্ঞাত আচরণের জন্য আহ্বান জানায় তবে কোডটি ঠিকঠাকভাবে কাজ করে এবং তাদের সংকলকটি ব্যবহার করার সময় তাদের সমস্ত পরীক্ষা পাস করে এবং আপনার সংকলকটির সাথে মারাত্মক ভুল হয়ে যায় goes

এটি সম্ভব, তবে আপনি যদি অপ্টিমাইজেশনের স্তরগুলি পরিবর্তন করেন, একই সংকলকটির পরবর্তী সংস্করণ এবং আরও কিছু ব্যবহার করতে পারেন তবে সেই পরিস্থিতিতে আপনি সমস্যার মধ্যেও পড়তে পারেন। সুতরাং কিছুই আপনি এড়াতে পারবেন না।


এটি লিন্ট এবং সম্ভবত ভ্যালগ্রাইন্ড ব্যবহারের জন্য একটি ভাল যুক্তি ।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.