আমি সি ++ তে ভাগ করা পয়েন্টারের জন্য একটি অ্যাকসেসর পদ্ধতি লিখছি যা এরকম কিছু হয়:
class Foo {
public:
return_type getBar() const {
return m_bar;
}
private:
boost::shared_ptr<Bar> m_bar;
}
সুতরাং getBar()রিটার্ন টাইপের কনস্ট-নেসকে সমর্থন করার জন্য এমনটি হওয়া উচিত boost::shared_ptrযা Barএটিতে নির্দেশিত পরিবর্তনকে বাধা দেয় । আমার ধারণাটি হ'ল shared_ptr<const Bar>আমি সেই ধরণের কাজটি করতে চাই, যেখানে const shared_ptr<Bar>পয়েন্টারকে পুনরায় অর্পণ করা নিজেই অন্যর দিকে নির্দেশ করতে বাধা Barদেয় তবে Barএটি যেটির দিকে ইঙ্গিত করে তা পরিবর্তনের অনুমতি দেয় ... তবে, আমি নিশ্চিত নই। আমি এটির প্রশংসা করব যদি নিশ্চিতরূপে জানে এমন কেউ যদি হয় তা নিশ্চিত করতে পারে, বা আমার যদি ভুল হয় তবে আমাকে সংশোধন করতে পারে। ধন্যবাদ!
constস্বাভাবিকভাবে মডিফাই কি এটা _precedes, তাই T *constএকটি হল constপয়েন্টার T, এবং T const*একটি পয়েন্টার const T। এবং এর constআগে কিছু না দিয়ে ব্যবহার করা এড়ানো ভাল ।
T *constএবং T const *এর মধ্যে পার্থক্য হিসাবে একই const shared_ptr<T>এবংshared_ptr<const T>
*এবং->এটি নিশ্চিত করার জন্য ডকুমেন্টেশনটি দেখতে পারেন ।