আধুনিক সি ++ কি আরও প্রচলিত হচ্ছে? [বন্ধ]


132

যখন আমি প্রথম প্রথম C ++ 6-7 বছর আগে শিখেছি তখন আমি যা শিখেছিলাম তা মূলত "C সহ ক্লাস" ছিল। std::vectorস্পষ্টতই একটি উন্নত বিষয় ছিল, এমন কিছু যা আপনি যদি জানতে চান তবে আপনি তা শিখতে পারেন । এবং নিশ্চয়ই কেউ আমাকে বলেন নি যে মেমোরি পরিচালনা করতে সাহায্যকারীদের ধ্বংস করা যেতে পারে। আজ, আমি যেখানেই দেখছি আমি RAII এবং SFINAE এবং এসটিএল এবং বুস্ট এবং ভাল, আধুনিক সি ++ দেখতে পাচ্ছি । এমনকি যে সমস্ত লোকেরা কেবলমাত্র ভাষা নিয়ে শুরু করছেন তাদের মনে হয় 1 দিন থেকে এই ধারণাগুলি শেখানো হয়েছিল।

আমার প্রশ্নটি হ'ল এটি কেবল কারণ কেবলমাত্র আমি "সেরা" দেখছি, এটি এখানে এসও এবং অন্যান্য প্রোগ্রামিং সাইটগুলিতে যা প্রশ্নগুলি প্রাথমিকভাবে আকর্ষণ করে (গেমদেভ.নেট), বা এটি আসলে প্রতিনিধি সামগ্রিকভাবে সি ++ সম্প্রদায়?

আধুনিক সি ++ আসলেই কি ডিফল্ট হয়ে উঠছে? বিশেষজ্ঞরা যে অভিনব জিনিসগুলি সম্পর্কে লেখেন সেগুলি হওয়ার পরিবর্তে এটি কি "সি ++ ঠিক কীভাবে হয়"? বা আমি কেবলমাত্র হাজার হাজার লোককে দেখতে পাচ্ছি না যারা এখনও "ক্লাস সহ সি" শিখছে এবং ব্যবহারের পরিবর্তে নিজস্ব গতিশীল অ্যারে লিখছে std::vectorএবং তাদের শীর্ষ-স্তরের কোড থেকে ম্যানুয়ালি নতুন / মুছলে মেমরি পরিচালনা করতে পারে?

আমি যতটা বিশ্বাস করতে চাই, এটি অবিশ্বাস্য মনে হয় যদি সামগ্রিকভাবে সি ++ সম্প্রদায় মূলত কয়েক বছরে এতটা বিকশিত হয়। আপনার অভিজ্ঞতা এবং প্রভাব কি?

(অস্বীকৃতি: সি ++ এর সাথে পরিচিত না এমন কেউ অন্য ভাষার তুলনায় সি ++ জনপ্রিয়তা অর্জন করছে কিনা তা জিজ্ঞাসা করে শিরোনামটির ভুল ব্যাখ্যা করতে পারে That's এটি আমার প্রশ্ন নয় "" আধুনিক সি ++ "বইয়ের নামানুসারে সি ++ এর মধ্যে একটি উপভাষা বা প্রোগ্রামিং শৈলীর একটি সাধারণ নাম" আধুনিক সি ++ ডিজাইন: জেনেরিক প্রোগ্রামিং এবং ডিজাইনের প্যাটার্নগুলি প্রয়োগ করা হয়েছে ", এবং আমি এই বনাম" পুরানো সি ++ "এর মধ্যে একমাত্র আগ্রহী So সুতরাং সি ++ এর সময় অতিবাহিত হয়েছে এবং আমাদের সবারই পাইথন ব্যবহার করা উচিত নয়)))


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

15
আমার ক্ষেত্রে, যখনই আমি এমন একজন পেশাদারের মুখোমুখি হয়েছি যিনি আরআইআই এবং ব্যতিক্রমী সুরক্ষার মতো আধুনিক সি ++ কৌশলগুলি বুঝতে (অগত্যা আলেকজান্দ্রেস্কুর বইয়ের উল্লেখ না করে) বা এমনকি পুনরুত্থানকারী এবং জেনেরিক অ্যালগরিদমের মতো সর্বাধিক প্রাথমিক ধারণাগুলি বুঝতে পেরেছি তখন আমি আরও দশজনকে খুঁজে পাই understand কমপক্ষে পেশাদারদের ক্ষেত্রে, তাদের মধ্যে অনেকগুলি কিছু জানার জন্য সময়সীমার মধ্যে খুব বেশি ধরা পড়ে, তাই স্ব-ঘোষিত সি ++ পেশাদারদেরও প্রায়শই অনেক কিছু শেখার থাকে। আমি আশঙ্কা করছি যে আমি সি ++ ০ এক্স এর মধ্যেও একজন হয়ে উঠছি: এর জন্য আমাকে অনেক কিছু শিখতে হবে এবং সামঞ্জস্য করতে হবে এবং আমার সাক্ষাতের সময়সীমা রয়েছে।
stinky472

উত্তর:


76

আমি কীভাবে জিনিসগুলি বিকশিত হয়েছে বলে মনে করি তা এখানে।

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

এসটিএল যখন প্রকাশিত হবে, তখন সেই উন্নত জিনিসগুলি ছিল, তবে বেশিরভাগ লোকেরা বই লেখেন, পাঠ্যক্রমটি একত্রে রেখেছিলেন এবং পাঠদান ক্লাসে প্রথমে সি শিখেছিলেন, তারপরে সেই অতিরিক্ত সি ++ স্টাফ ছিল, তাই দ্বিতীয় প্রজন্ম সেই দৃষ্টিকোণ থেকে শিখেছিল। অন্য উত্তরে যেমন উল্লেখ করা হয়েছে, আপনি যদি লুপগুলির জন্য নিয়মিত লিখতে স্বাচ্ছন্দ্য std::for_eachবোধ করেন তবে ব্যবহার পরিবর্তন করা আপনার উষ্ণ ধোঁয়াশা অনুভূতি ব্যতীত বেশি কিছু কিনবে না যে আপনি "আধুনিক" উপায়ে জিনিসগুলি করছেন।

এখন, আমাদের কাছে এমন প্রশিক্ষক এবং বইয়ের লেখক রয়েছে যারা পুরো সি ++ ব্যবহার করে চলেছেন এবং সেই দৃষ্টিকোণ থেকে তাদের নির্দেশনা যেমন কোয়েনিগ এবং মু-এর ত্বরণী সি ++ এবং স্ট্রোস্ট্রপের নতুন পাঠ্যপুস্তকটি পেয়েছেন। সুতরাং আমরা char*তখন শিখি না std::strings

"উত্তরাধিকারসূত্রে" পদ্ধতিগুলি প্রতিস্থাপন করতে কত সময় লাগে এটি একটি আকর্ষণীয় পাঠ, বিশেষত যখন তাদের কার্যকারিতার ট্র্যাক রেকর্ড থাকে।


13
হ্যাঁ. সি কোডারগুলির বিশাল ইনস্টল বেসের কারণে সি ++ অত্যন্ত পিছনের দিকে সিটির সাথে সামঞ্জস্যপূর্ণ করা খুব স্মার্ট ছিল। ডসের সাথে সর্বদা পিছনে সামঞ্জস্য বজায় রাখার এমএসের সফল কৌশলটির সাথে খুব মিল। (তারা প্রায়শই বেদনাদায়ক দৈর্ঘ্যের জন্য রেমন্ড চেনের দুর্দান্ত ব্লগটি দেখুন ...)
j_random_hacker

2
উফফ, সেখানে বেশ কিছুটা স্পর্শকাতর হয়ে গেছে ... আমি যে বলেছি যে সি থেকে সরে গেছে (তবে সি-স্টাইলের চিন্তাভাবনা রেখেছিল) এবং যাদের "প্রথম স্বাদ আছে" তাদের মধ্যে "প্রজন্মের বিভাজন" সম্পর্কে আপনি সঠিক "পোস্ট-এসটিএল সি ++ ছিল।
j_random_hacker

57

অবশ্যই হ্যাঁ. আমার কাছে আপনি যদি এই শব্দটি "আধুনিক সি ++" শৈলীতে সি ++ প্রোগ্রামিং না করে থাকেন তবে সি ++ ব্যবহার করার কোনও মানে নেই! আপনি কেবলমাত্র সি ব্যবহার করতে পারেন "মডার্ন সি ++" কেবলমাত্র আমার মতে সি ++ প্রোগ্রাম করার একমাত্র উপায় হওয়া উচিত এবং আমি প্রত্যাশা করব যে যারা সি ++ ব্যবহার করেন এবং এই "আধুনিক" ফ্যাশনে প্রোগ্রাম করেছেন তারা প্রত্যেকেই আমার সাথে একমত হবে। প্রকৃতপক্ষে, আমি যখন কোনও সি ++ প্রোগ্রামার শুনি যিনি কোনও অটো_পিটার বা পিটিআর_ভেক্টর এর মতো জিনিস সম্পর্কে অজানা hear যতদূর আমি উদ্বিগ্ন, সেগুলি ধারণাগুলি সি ++ এর মূল এবং মৌলিক এবং তাই আমি এটি অন্য কোনও উপায়ে কল্পনা করতে পারি নি couldn't


4
+1 টি; আমি "আধুনিক সি ++" স্টাইলটি খুব তাড়াতাড়ি তুলেছি কারণ এটি করার প্রাকৃতিক উপায় (যদি আপনি ক্লাস সহ সি ভাবেন না)।
অ্যাডাম হাউস

21
"শুধু সি ব্যবহার করবেন?" সি অভিশাপ শক্তিশালী।
ক্লার্ক গাবেল

4
নিশ্চিত যে রোবটগুলি সি ++ এ প্রোগ্রামিং করবে না, তারা যথেষ্ট বোকা নয়, এবং এটি সংকলনের চেষ্টা করে নিথর করবে।
ম্যাট জয়েনার

6
@ ক্লার্কগেইবেল আচ্ছা, সি যদি শক্তিশালী হয়, তবে সি ++ এর উত্তরাধিকার সূত্রে ইস্যু ছাড়াই হবে :)
কিংবদন্তি 2 কে

4
@ রিক্সান্টোস, আপনি বলেছেন যে আমাদের কাছে পারফরম্যান্স মূল্যায়নের প্রচুর বিকল্প নেই, যেমন সমাবেশের আউটপুট, টাইমার, র‌্যাম মনিটর এবং আরও অনেকগুলি দেখা। সি ++ সে ক্ষেত্রে সি থেকে আলাদা নয়। সন্দেহ হলে, প্রোফাইল। অন্য কিছু কেবল শ্রবণশক্তি।
আন্ডারস্কোর_২৪

25

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

এখন, সি-# /। নেট যেমন কম-বাধা-থেকে-প্রবেশ-পরিচালিত প্ল্যাটফর্মগুলির বৃহত্তর গ্রহণযোগ্যতার সাথে, সি ++ ব্যবহার করার কারণ কম রয়েছে। অনেক বিকাশকারী বেসের একটি পছন্দ থাকবে এবং আসুন সত্য হয়ে উঠি: সি ++ একটি নবাগতের জন্য শেখার জন্য ভালুক। সি # দিয়ে, আপনি কেবল এটির সাথে চালাতে পারেন।

আর্টটি অনুশীলন চালিয়ে যাওয়ার জন্য এটি কেবলমাত্র প্ল্যাটফর্মগুলি ছেড়ে দেয় যা সি ++ এবং ডাই-হার্ড সি ++ প্রচারক প্রয়োজন। এটি এমন একটি সম্প্রদায় যা "আধুনিক সি ++" হিসাবে বিবেচিত বিমূর্ততার সমস্ত স্তরগুলির প্রয়োজন এবং চায়।

সুতরাং হ্যাঁ, আমি বিশ্বাস করি "আধুনিক সি ++" আপনার বক্তব্য হিসাবে, আরও প্রচলিত হয়ে উঠছে। যাইহোক, এটি অতীতে এটির চেয়ে ভিন্ন ভিন্ন দর্শকের কাছে প্রচলিত।


আসুন ছেলেরা, এই উত্তরটি কিছু ভাল পয়েন্ট দেয়। সি ++ নিখুঁত নয়, আমরা সকলেই জানি যে নিজেই অভিযোগ করেছেন যে এটি খুব বড় এবং শেখা খুব কঠিন। যদিও মডার্ন সি ++ এত ধীরে ধীরে উত্থিত হয়েছে সে সম্পর্কে আমি একমত নই - IMHO এত বড় ভাষার জন্য "রাম্বাল ফরোয়ার্ড" হতে খুব বেশি সময় নেয়।
j_random_hacker

4
সুতরাং আপনি বলছেন যে আরও গড় বিকাশকারীরা সি # এবং এই জাতীয় দিকে রওনা হয়েছে, যখন আরও হার্ড-কোর সি ++ এর সাথে আরও আটকে আছে? (এমনটি নয় যে সত্যিকারের স্মার্ট সি # /। নেট লোক নেই, তবে কম স্মার্ট অনেকগুলি রয়েছে)) নির্দিষ্ট পরিমাণে বোধ তৈরি করে।
ডেভিড থর্নলি

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

3
কেসগুলি ব্যবহার করুন: আমি আমার ডিবিতে সিআরইউডি করতে একটি উইন্ডো ক্লায়েন্ট চাই। সি # /। নেট বা সি ++ / এমএফসি ব্যবহার করবেন? আমি একটি ওয়েব অ্যাপ্লিকেশন চাই ... সি # / এএসপি.নেট বা সি ++ / আইএসএপিআই ব্যবহার করবেন? আমি ডাইরেক্টএক্স সি # /। নেট বা সি ++ / এমএফসি / ডাব্লুটিএল ব্যবহার করে একটি সাধারণ "নাইববলস" ক্লোন চাই? আমি সমাবেশ09 এ একটি বিজয়ী ডেমো চাই ... অবশ্যই সি ++ (বনাম সি #)।
spoulson

8
আমি জানি না এটি বিমূর্তকরণের আরও স্তর বা আরও ডাই-হার্ড-নেস এর বিষয় কিনা। আমার সন্দেহ হয় যে টেমপ্লেটগুলির মাধ্যমে যে ধরণের বিমূর্ততা পাওয়া যায় তা কেবল জাভা বা সি # তে উপলভ্য ছিল না, তাই যাদের পছন্দ হয়েছে বা তাদের প্রয়োজনীয় লোকেরা সি ++ দিয়েই রয়েছেন।
ক্রেজেন জাভিয়ার সিটেকার

16

আমি এই ছেলেগুলির মধ্যে একজন যারা এসটিএলের সাথে কীভাবে কাজ করতে শিখতে পেরেছি এবং আরআইআই এবং ভাল সি ++ প্রোগ্রামিং অনুশীলন সম্পর্কে অনেক কিছু শুনেছি। ১. আজ সি ++ শেখার জন্য বেশ কয়েকটি প্রস্তাবিত বইয়ের মতো মনে হচ্ছে (এক্সিলারেটেড সি ++ এবং কার্যকর সি ++ সিরিজের মতো) ) আপনার নিজের স্টাফগুলি রোল করার পরিবর্তে এসটিএল সরঞ্জামগুলি ব্যবহার করার দিকে মনোনিবেশ করুন এবং কার্যকর (বা "আধুনিক") প্রোগ্রামিংয়ের জন্য প্রচুর "বিধি" দিন।

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


আমি যেখানে কাজ করি আমরা এখনও ক্লাস সহ সি ব্যবহার করি, সম্ভবত কারণ সেখানে প্রচুর পুরনো টাইমার আছেন যারা কিছু সময়ের জন্য রয়েছেন। তারা এসটিএল থেকেও খুব সাবধান বলে মনে হচ্ছে, ভাল করা যাক।
অজস্র

12

আমি মনে করি আপনার ঠিক একটি খারাপ অভিজ্ঞতা শুরু হয়েছিল।

আপনার নিজের স্কট মায়ার্স কার্যকর সি ++ বই পেতে হবে। আমি ১৯৯৯ সালে ক্রোধে সি ++ তে শুরু করেছিলাম, আমার টিমের নেতৃত্ব আমাকে কোনও কোডে চেক করার অনুমতি দেওয়ার আগে আমাকে কার্যকর সি ++ এবং আরও কার্যকর সি ++ পড়তে বাধ্য করেছিল।

তার পরামর্শ অধিকাংশ লাইন "এই ব্যবহার করবেন না বৈশিষ্ট্য , কিন্তু আপনি যদি must, রাখা এই মনের মধ্যে"

যদি আপনি তাঁর পরামর্শ অনুসরণ করেন তবে আপনি ভাল বা "আধুনিক" সি ++ লিখবেন।

তার এখন এসটিএলে একটি বই আছে, তবে তা আমি পড়িনি।


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

9

আমার সি ++ জবগুলিতে, আমি আধুনিক বৈশিষ্ট্যগুলি ক্রমবর্ধমানভাবে ব্যবহার করার জন্য পেয়েছি এবং আরও লোকেরা আমাকে ফোন স্ক্রিনিং এবং সাক্ষাত্কারে সেগুলি সম্পর্কে জিজ্ঞাসা করেছিলেন। আমি যতদূর বলতে পারি, তারা ধরছে।

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

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

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


এমনকি এসটিএল এর প্রথম সংস্করণগুলিও ব্যতিক্রম-নিরাপদ ছিল না।
ক্রেজেন জাভিয়ার সিটেকার

2
সেই সময়ে, ব্যতিক্রমী-নিরাপদ কোড কীভাবে লিখতে হয় তা সত্যই কেউ জানত না। এটি স্ট্যান্ডার্ড প্রকাশের পরের বছরগুলিতে কাজ করা হয়েছিল। আমি সি ++ প্রতিবেদনের কয়েকটি নিবন্ধ মনে করি।
ডেভিড থর্নলি

7

প্রকল্পটিতে কাজ করার সময় আমি বর্তমানে জড়িত রয়েছি, প্রচুর সি ++ কোড রয়েছে যা উল্লেখযোগ্য সময়ের মধ্যে বিকশিত হয়েছে (এখন 10 বছরেরও বেশি সময় ধরে)। আপনি যে বিবর্তনের কথা বলছেন সেখানে স্পষ্টভাবে দৃশ্যমান: পুরানো কোডটি প্রায়শই "ক্লাস সহ সি" থাকে - কাঁচা পয়েন্টার, char*স্ট্রিং এবং সম্পর্কিত সি ফাংশনগুলির ব্যবহার, অ্যারে ইত্যাদি; নতুন কোডটি রিসোর্সগুলি পরিচালনা করতে এটিএল স্মার্ট পয়েন্টার এবং এ জাতীয় ব্যবহার করে, তবে এখনও বেশিরভাগ সময় হাতে-কোডেড লুপগুলিতে আটকে থাকে এবং পুনরাবৃত্তি একটি বিরল দৃশ্য; এবং নতুনটি হ'ল এসটিএল পাত্রে, অ্যালগরিদমে,shared_ptr(হ্যান্ডেলগুলি পরিচালনা করার জন্য কাস্টম মুছনকারীগুলি সহ), ভারী জেনেরাইজড ফাংশন এবং শ্রেণিক টেম্পলেট এবং আরও অনেক কিছু। ম্যানুয়াল আজীবন পরিচালনার সাথে কাঁচা আনইনক্যাপসুলেটেড পয়েন্টারগুলির মতো বেশিরভাগ traditionalতিহ্যবাহী "সি ক্লাস উইন্ডো" কোডিং কৌশলগুলি আজকাল কোড রিভিউগুলিতে খুব ভ্রান্ত। এটি বিচার করে মনে হয় আপনার পর্যবেক্ষণটি সঠিক।

সর্বাধিক সাম্প্রতিক বিকাশটি সি ++ 0 এক্স ল্যাম্বডাসের জন্য একটি অদ্ভুত বলে মনে হচ্ছে - এটির একটি ইতিবাচক দিক রয়েছে যে এটি হ্যান্ড-কোডেড লুপগুলির উপর স্ট্যান্ডার্ড অ্যালগরিদম ব্যবহারের পক্ষে ব্যালেন্সকে কাত করে দেয়, যেহেতু এখন আপনি আপনার সমস্ত কোড ইনলাইন দিয়ে রাখতে পারেন অ্যালগরিদম পাশাপাশি।


6

আমি বলব না যে আজকের স্ট্যান্ড :: ভেক্টর "আধুনিক" হিসাবে যোগ্যতা অর্জন করেছে। এটা সত্যিই বেসিক।

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


1
কেন আপনি বলেন যে ভেক্টর আধুনিক হিসাবে যোগ্যতা অর্জন করে না? এটি এখনও অনেক ব্যবহারের ক্ষেত্রে এটি শিল্পের অবস্থা, যদিও এটি প্রাথমিক। তবে আমি মনে করি কিছু কিছু মৌলিক হওয়ার অর্থ এটি আধুনিক নয়। বরং বিপরীত, কিছু যদি। তবে আমি মনে করি আমি আপনার দ্বিতীয় অনুচ্ছেদের সাথে একমত আছি :)
জোহানেস স্কাউব - লিটব

4
তবে আমি মনে করি কারণ এটি কিছু পিপিএল মূলতঃ সমস্ত কিছুর জন্য এবং এমনকি বন্ধুদের জন্য ব্যবহার করার চেষ্টা করে এমনকি এমন স্টাফের জন্য যেখানে সরল লুপটি আরও সংক্ষিপ্ত হবে - 10 লাইন পর্যন্ত 2 লাইন লুপটি স্ফীত করে। আমি আশা করি যখন ল্যাম্বদা সি ++ 1x তে পাওয়া যাবে তখন আরও লোকেরা_আচ এবং বন্ধুদের ব্যবহার করবে
জোহানেস স্কাউব - লিটব

7
ভেক্টর বেসিক হচ্ছে ঠিক পয়েন্ট। এটি সর্বদা প্রাথমিক ছিল না। একবার, এটি সাধারণত একটি সুপার-জটিল হিসাবে দেখা হত (এটি টেম্পলেটগুলি ব্যবহৃত হয়েছিল) এবং অকার্যকর (এটি কোনও কাঁচা অ্যারে নয়) জিনিস। বিশেষজ্ঞরা হয়ত এমন কিছু প্রচার করতে পারে তবে অনেকে বিশ্বাস করেননি।
জলফ

2
হতে পারে কারণ std :: for_each এর তুলনায় আপনার যা প্রয়োজন খুব কমই হয় ... std :: রূপান্তর? অ্যালগরিদম ব্যবহার আপনাকে একটি খুব সাধারণ বাগ থেকে মুক্তি পেতে সহায়তা করে: ভুল লুপের অবস্থা।
এডুয়ার্ড এ।

ভেক্টর <বুুল> অবশ্যই মৌলিক নয় ...
কুগেল

6

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

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

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

আপনি যদি এই দর্শন অনুসরণ করেন তবে বেশিরভাগ লোকদের আমি জানি, সি ++ সর্বদা "ক্লাস সহ সি" থাকবে।

শুভেচ্ছা সহ,


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

+1: "(ভাষার উপর দৃষ্টি নিবদ্ধ করা নয়, এটি। যে ভাষাগুলি শেখানো হয় স্পষ্টভাবে এখনও সেগুলি সঠিকভাবে শেখানো উচিত)"
জ্যারেড আপডেটিকে

6

আমার অভিজ্ঞতায় এটি সফ্টওয়্যার পণ্য / প্রকল্পের বয়সের উপর নির্ভর করে। আমি বেশিরভাগ নতুন প্রকল্পগুলি সম্পর্কে সচেতন যেগুলি আধুনিক সি ++ (আরআইআইআই, এসটিএল, বুস্ট) ব্যবহার করে। তবে, অনেকগুলি সি ++ প্রকল্প রয়েছে যা 10 বছরেরও বেশি পুরানো এবং আপনি সেখানে আধুনিক সি ++ দেখতে পাবেন না।

এছাড়াও, মনে রাখবেন যে সবচেয়ে জনপ্রিয় এসটিএল বাস্তবায়নগুলি সম্ভবত 5 বছর আগে পর্যন্ত বেশ ভেঙে পড়েছিল (এমএসভিসি <7.0 এবং জিএনইউ <3.00)


4

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

এখন যেহেতু সবাই এমএসভিসি ++ 6 ব্যবহার করা বন্ধ করে দিয়েছে, এসটিএলপোর্ট মেস আমাদের পিছনে রয়েছে। তবে টিআর 1 দরজার বাইরে যাওয়ার সাথে সাথে আমরা আবার ফিরে এসেছি "কোন সংস্করণের কোন সংস্করণগুলি এটিকে সমর্থন করে এবং এটি সঠিকভাবে পেয়েছে" এবং আবার এটি গ্রহণকে ধীর করবে।

আমি 1992 সালে সি (সি ++ নয়) -তে শুরু হওয়া একটি প্রকল্পে কাজ করি theতিহ্যগত কোডবেজ জুড়ে আধুনিক অনুশীলন স্থাপন করা অসম্ভব। তেমনিভাবে আমি অন্য একটি প্রকল্পে কাজ করি যা সি ++ ভাষার মূল প্রান্তের অনেক কাছাকাছি।


3

আমি যে বড় বড় দলগুলিতে চলেছি এবং শুনেছি সেগুলি বড় বিবেচনা করে "আমরা কি ব্যতিক্রম ব্যবহার করছি?" প্রশ্ন। এটি কি আমরা আধুনিক সি ++ ব্যবহার করছি?

আপনি একবার ব্যতিক্রম ব্যবহার করবেন না, আপনি ভাষা এবং এর গ্রন্থাগারগুলির সম্পূর্ণ শক্তি ব্যবহার থেকে বঞ্চিত হন।

তবে অনেক পুরানো কোডবেস ব্যতিক্রম-হ'ল, এবং এমন কোনও কোডবেসে যেগুলি তাদের প্রত্যাশা করে না, বা এমন কোনও দলে যারা এগুলি কীভাবে ব্যবহার করতে জানে না, তাদের পক্ষে জুতা দেওয়া কঠিন বলে মনে হয়, সুতরাং এই জাতীয় ক্ষেত্রে উত্তরটি হ'ল প্রায়শই 'না'

আমার অভিজ্ঞতা অনুসারে, আধুনিক সি ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ এর অভিজ্ঞতা আমার জন্য, আধুনিক সি +++++++++++++++++++++++++++++++++++++++++++++++++++++? যারা এটি চাইছেন তারাও উত্তরাধিকারের কোডের মতো হতে চান তাদের আপত্তি কাটিয়ে উঠতে হবে।

যদিও আমি মনে করি না যে ওল্ড-সি ++ কোডবেসগুলি খুব দ্রুত চলে যাচ্ছে, আমি বিশ্বাস করি যে পাঁচ বছর আগের তুলনায় বিশ্বে এই অনুরাগী ব্যক্তিদের সংখ্যা অনেক বেশি। তারা পাঁচ বছর আগে তারা একই চড়াই উতরাইয়ের লড়াইয়ের মুখোমুখি হয়েছিল, তবে তারা আত্মীয়স্বজন খুঁজে পাওয়ার সম্ভাবনা বেশি।


3

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

আমার জন্য, "মডার্ন সি ++"! = "টেমপ্লেট মেটাপোগ্র্যামিং"। আমি বলব সি এর উপরে সি ++ এর বৈশিষ্ট্যগুলি এই বিভাগগুলিতে পড়বে:

  • শ্রেণি (কনস্ট্রাক্টর, ডেস্ট্রাক্টর, আরআইআইআই, ডায়নামিক কাস্টিং এবং আরটিটিআই)
  • ব্যতিক্রমসমূহ
  • তথ্যসূত্র
  • স্ট্যান্ডার্ড লাইব্রেরিতে ডেটা স্ট্রাকচার এবং অ্যালগরিদম (এসটিএল)
  • iostreams
  • সাধারণ ক্লাস এবং ফাংশন টেম্পলেট
  • টেমপ্লেট রূপক

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

টেমপ্লেট মেটাপোগ্রামিং।

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


6
আইএমএইচও টেমপ্লেট মেটাপোগ্র্যামিং অ্যাপ্লিকেশন প্রোগ্রামিংয়ের জন্য প্রায় কখনও প্রয়োজন হয় না , যেখানে এটি কেবল পাঠযোগ্যতার ব্যয় এবং হার্ড-টু-বুদ্ধিযোগ্য ব্যয়ে ব্যয় করে সাধারণ-সাধারণ প্রয়োজনের অযৌক্তিক স্তর সরবরাহ করে। তবে ওটিওএইচ এটি বিশেষজ্ঞদের পক্ষে গ্রন্থাগারগুলি তৈরি করার সময় অত্যন্ত কার্যকর (একটি লা বুস্ট) যেখানে যুক্ত সাধারণতা দরকারী এবং (কদর্য, কৃপণ, বিভ্রান্তিকর) প্রক্রিয়াগুলি দৃষ্টিকোণ থেকে গোপন করা যেতে পারে।
j_random_hacker

3
আপনি ঠিক সেই টেম্পলেটটিতে মেটাপোগ্র্যামিং স্বাদে ব্যবহার করতে পারেন, যদি পরিমিতরূপে করা হয়, বিশেষত গ্রন্থাগারে। তবে সবসময় প্রায়শই আমি দেখেছি লোকেরা টেমপ্লেট রূপক রাস্তাটি খুব বেশি নিচে চলে যায় এবং ফলস্বরূপ তাদের প্রোগ্রামগুলি ভোগে। আমি রূপকল্পের বিপক্ষে নই, আসলে আমি এর পক্ষে দৃ strong় উকিল, এটি কেবলমাত্র সি ++ এর সুবিধাগুলি যথেষ্ট অপরিশোধিত।
আন্তন আই সিপোস

2

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


1
নেক্রো বলতে বোঝায় না, তবে আমি এই প্রস্তাবটি বন্ধ করেই বইটি কিনেছি। আমাদের দেখতে হবে!
অ্যান্ড্রু ওয়েয়ার

2

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


1

১৯৯০ এর দশকের শেষের দিকে ভাষার মানিককরণ প্রথম পদক্ষেপ ছিল, এটি সংকলক নির্মাতাদের বৈশিষ্ট্যগুলির "স্ট্যান্ডার্ড" সেটগুলিতে মনোনিবেশ করার অনুমতি দেয়, ভাষাটিকে কিছুটা রুক্ষ প্রান্তও ঠিক করার অনুমতি দেয়, যা মানককরণের প্রক্রিয়া হিসাবে দেখা দেয়।

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

এখানে একটি উল্লেখযোগ্য পরিবর্তন হ'ল পূর্বে ফ্রেমওয়ার্কগুলি বেস ক্লাস এবং ডেরাইভেটেড ক্লাসগুলির (একটি রান টাইম বৈশিষ্ট্য) ধারণার উপর ভিত্তি করে ছিল। তবে এখন বেশিরভাগ উন্নত বৈশিষ্ট্যগুলি প্রায়শই "পুনরাবৃত্ত" টেম্পলেটগুলির (একটি সংকলনের সময় বৈশিষ্ট্য) উপর ভিত্তি করে তৈরি হয়।

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

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

ভাষার পরবর্তী পদক্ষেপগুলি মাল্টি-কোর প্রোগ্রামিংয়ের সমর্থন, যা 0x স্ট্যান্ডার্ড প্রচেষ্টার অংশ।


1

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


-3

এটি আশ্চর্যজনক যে সি ++ আরও স্থিতিশীল করার ক্ষেত্রে কীভাবে সামান্য প্রচেষ্টা চলে। সতর্কবার্তা ব্যবস্থা রয়েছে তবে এটি খুব বেশি বিকশিত হচ্ছে না। 10 বছর আগের চেয়ে নিজেকে একটি পায়ে গুলি করা আরও সহজ। কেন জানি না, তবে সি ++ এখনও আমার প্রিয় ভাষা। :)


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

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

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

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

এই উত্তরটি লেখা হয়েছিল এক দশক আগে। সেই সময়, এটি আশ্চর্যজনক ছিল যে c ++ আরও স্থিতিশীল করার জন্য কত প্রচেষ্টা করা হচ্ছে । সি ++ 0x সি ++ 11 হিসাবে প্রকাশ হতে এত দীর্ঘ সময় নিয়েছিল এমন একটি মূল কারণ এটি ছিল।
ডেভিড হামেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.