ข้ามไปที่เนื้อหาหลัก

บทความ

กำลังแสดงโพสต์จาก สิงหาคม, 2012

C++11 Smart Pointers ทดลองใช้ std::shared_ptr

พอดีหาเวลาทดลองคุณสมบัติใหม่ๆ ของ C++11 ดูหลายอย่างน่าใช้งานมาก เพราะทำให้ชีวิตการเขียนโปรแกรม C++ ง่ายขึ้น อ่านไปอ่านมาไปสะดุดกับ std::shared_ptr ซึ่งอยู่ภายได้ header ชื่อ memory ว่าดีกว่าการใช้ new กับ delete เลยคิดว่าหากเราเอามาใช้กับ design pattern ละจะดีแค่ใหน เลยลองหาโค้ดตัวอย่างของ design pattern ดูก็พบ  C++ Programming/Code/Design Patterns  จึงเอาส่วนของ Abstract Factory  มาลองแก้ไขดู หน้าตาเลยเป็นแบบนี้ // pizza.cpp // This original code from http://en.wikibooks.org/wiki/C++_Programming/Code/Design_Patterns#Abstract_Factory on 2012-08-01 // add constructor to Pizza for monitor behavior #include <iostream> #include <string> class Pizza { public:     Pizza(std::string name):name(name){         std::cout << "Constuct Pizza name: " << name << std::endl;     }     virtual ~Pizza(){         std::cout << "Destroy Pizza name: " << name << std::endl;     }     virtual int getPrice() const = 0;