C + + Memory Management Learning Framework

Source: Internet
Author: User
Tags tutorialspoint

This series of articles, mainly learning C + + memory management This piece of learning notes.

Time: 6.7-21

Under the chapeau of technical insider, bring into the technology of learning C + + memory management:

Memory management is the most teeth hate problem of C + +, is also the most controversial issue of C + +, so to become a C + + master, memory management is a must!

Notes Summary:

1.c++ Memory Management Learning notes (1)

2.c++ Memory Management Learning notes (2)

3.c++ Memory Management Learning notes (3)

4.c++ Memory Management Learning notes (4)

5.c++ Memory Management Learning notes (5)

6.c++ Memory Management Learning notes (6)

7.c++ Memory Management Study notes (7) (end)

8.c++ Memory Management Learning Note closing

Foreign article:

1.c/c++ arrays and pointers are detailed;

2.c++ Copy Control in detail (copy controls);

Personally, the attitude of learning is: whether it is reading books, watching the blog, to see the information must have doubts and drill down attitude!

The following sections are learning memory management materials, as the study continues to deepen, I believe that the information will be more and more!

Related books:

1. The inside of C + + memory management technology (DOWNLOAD)

2. "In-depth understanding of Linux virtual Memory Management" translated version, Mel Gorman auther: Balorid Junquillin (Download)

3. "Ikeuchi Spring and Autumn" Houtie (Download)

4. UNIX Advanced Environment Programming (DOWNLOAD)

5. C Expert Programming expert C programing (Download)

6. "C + + Primer" (Download)

7. "STL Source Analysis" (Download)

Related Blogs:

1. Heap allocation of memory and stack allocation & character arrays, character pointers, sizeof summary (author: small Shrimp Nest): http://space.itpub.net/16856446/viewspace-612834;

Details of memory allocations in 2.C and C + +: http://www.cnblogs.com/sj20082663/archive/2013/04/23/3037181.html;

3.c++ Engineering Practice (2): Do not overload the global:: operator new (): http://blog.csdn.net/solstice/article/details/6198937;

4.new, delete (new[], delete[]) operator Overload: http://name5566.com/2339.html;

5. Semantic "traps"---arrays and pointers: http://www.cnblogs.com/yanlingyin/archive/2011/11/29/2268391.html#commentform;

6. Arrays and pointers behind--memory angle: http://www.cnblogs.com/yanlingyin/archive/2011/12/06/2277821.html;

7.c++ value passing, pointer passing, reference passing detailed: http://www.cnblogs.com/yanlingyin/archive/2011/12/07/2278961.html;

The class template in 8.c++ details: http://www.cnblogs.com/assemble8086/archive/2011/10/02/2198308.html;

9.c++ class Template: http://blog.sina.com.cn/s/blog_5ea0192f0100cstj.html;

10.c++ Primer 4th notes, exception handling, AUTO_PTR class: http://www.cnblogs.com/mydomain/archive/2011/04/15/2017424.html;

11. Generic Programming: source, realization and meaning: http://blog.csdn.net/pongba/article/details/2544894;;

12.c++ Depth Quest Series: Smart pointer (smart Pointer) [one]http://www.cppblog.com/bossbird/archive/2008/09/22/62434.html;

13.c++ Depth Quest Series: Smart pointer (smart Pointer) [two]:http://blog.csdn.net/redstar81/article/details/19755;

14.auto_ptr Code and defects: http://blog.csdn.net/wuzhekai1985/article/details/6603494;

15. Efficient use of auto_ptr:http://www.cppblog.com/mymsdn/archive/2010/04/07/using-auto_ptr-effectively.html;

16.effective C + +--resource management: http://philoscience.iteye.com/blog/1402928;

17.c++ the famous library of comparison and learning experience (STL. Boost.GUI.XML. Network, etc.)--ZZ from cu:http://hi.baidu.com/gikidy/item/96082ed10c9d2b14d90e449b;

18.Boost smart pointer--shared_ptr:http://www.cnblogs.com/tianfang/archive/2008/09/19/1294521.html;

Smart pointer in 19.Boost: http://www.cnblogs.com/sld666666/archive/2010/12/16/1908265.html;

20.c++ copy constructor detailed: http://blog.csdn.net/lwbeyond/article/details/6202256;

21.c++: When is the copy constructor called? : http://www.slyar.com/blog/cpp-copy-constructor.html;

22.c++ Memory Management transformation: http://blog.csdn.net/xushiweizh/article/details/1388982;

Related information:

1. Memory Management Insider (IBM): http://www.ibm.com/developerworks/cn/linux/l-memory/;

Description: This article provides an overview of memory management techniques that Linux™ programmers can use, although the focus is on the C language, but it also applies to other languages. This article will give you details on how to manage memory, and will then show you how to manage memory manually, how to use reference counting or a memory pool to manage memory semi-manually, and how to use garbage collection to automatically manage memory.

Discussion on memory management of 2.c++ (1) (2)-(51cto): http://developer.51cto.com/art/201104/254712.htm;

Description: We all know the concept of the life cycle of variables, but sometimes the life cycle of the variable is over, but the allocated memory space is still there. This article takes four different examples to explore the depth of C + + memory management to illustrate the reasons for this.

3.c++ memory management Analysis in different ways (51cto): http://developer.51cto.com/art/201002/183110.htm;

Description: C + + memory management in a total of three ways, respectively, automatic storage, static storage, dynamic storage. So how do you correctly understand these three ways? Here we will do an introduction.

4. Memory Management Insider (1) (2) (3)-(51cto): http://developer.51cto.com/art/200509/3600.htm;

Introduction: This article will introduce the basic concepts of manual, semi-manual, and automated memory management practices.

5.c++ memory allocation in detail: http://developer.51cto.com/art/201107/276154.htm;

Description: We all know that memory is basically divided into static storage area, heap area and three parts of the stack area. This article describes the problem of memory allocation in C + +, and I hope that you will be helpful to see it together.

6. Recommendation 33: Careful overloading of operator New/operator delete:http://book.51cto.com/art/201202/317799.htm;

Description: "Writing high-quality code: 150 recommendations for improving C + + programs" This book is a must-read for C + + programmers in advanced practice, and contains all the best practices for C + + coding, from three major aspects: syntax, coding specifications and programming habits, program architecture and design ideas. Problems with programming and design provide an empirical solution, providing 150 of invaluable advice for C + + programmers to write higher-quality C + + code. This section introduces you to recommendation 33: Carefully reload operator new/operator Delete.

7. Overloaded new and Delete methods for C + + memory security: http://www.2cto.com/kf/201210/162563.html

Description: C + + uses the New keyword to create an object that is allocated to the heap memory space and then gets the object address, which is prone to access address bugs or memory leak bugs when the program is large and complex. To avoid memory leaks and to find a memory leak when debugging a program, you can overload the new and delete functions to ensure program memory security

8.Arrays and Pointers:http://www.functionx.com/cpp/lesson14.htm

9.c++ Pointer to an array:http://www.tutorialspoint.com/cplusplus/cpp_pointer_to_an_array.htm;

10.Pointer types and arrays:http://pw1.netcom.com/~tjensen/ptr/ch2x.htm;

11.c++ pointers vs arrays:http://www.tutorialspoint.com/cplusplus/cpp_pointers_vs_arrays.htm;

Array is not pointer:http://www.cplusplus.com/forum/articles/10/;

13.pointers,pointers and arrays:http://www.cplusplus.com/doc/tutorial/pointers/;

14. Arrays and pointers behind--memory angle: http://www.cnblogs.com/yanlingyin/archive/2011/12/06/2277821.html;

15. The relationship between pointers, arrays, and addresses: http://book.51cto.com/art/201103/248065.htm;
Introduction: "C Language Development Handbook (Collector Edition)" 9th chapter pointer, this chapter first introduced the use of pointers in C language, mainly including the concept of pointers, pointer variables declaration and assignment, and then detailed on the pointer and array of the relationship and the rules of the pointer, and then introduced a pointer to a multidimensional array. At the same time, several special pointers are introduced in this chapter, including string pointers, pointer arrays, pointers to pointers, pointers, functions and so on. Finally, this chapter summarizes the learning points of pointers. This section describes the relationship between pointers, arrays, and addresses.

16.c++ class template application code in-depth analysis: http://developer.51cto.com/art/201002/183044.htm

17.c++ in the template use detailed (turn): http://www.360doc.com/content/09/0403/17/799_3011262.shtml;

18.More effective C + + smart pointer: http://dev.yesky.com/426/2496426.shtml;

19. A detailed description of the boost smart pointer in C + +: http://developer.51cto.com/art/201012/239004.htm;
Introduction: Today we are going to introduce the use of smart pointers in boost. For memory management, there are two implementations in C + +: Garbage collection mechanisms and smart pointers. Smart pointers are considered to be the best solution for C + + memory problems.

20.What is a smart pointer and when should I use one?:http://stackoverflow.com/questions/106508/ What-is-a-smart-pointer-and-when-should-i-use-one

21.c++ Smart pointer Detailed: http://blog.csdn.net/xt_xiaotian/article/details/5714477

22. Analysis of C + + resource management content: http://developer.51cto.com/art/201001/181314.htm
Introduction: In C + + resource management, there are two concepts, the upward type conversion, the downward type conversion, respectively, describes the subclass to the base class and the base class to the subclass of the forced type conversion.

23.Smart pointers overview:http://dlugosz.com/repertoire/refman/classics/smart%20pointers%20overview.html;

24.Smart Pointers-what, why, which?:http://ootips.org/yonat/4dev/smart-pointers.html;

25. Step by Step STL: Custom smart Pointer (top): Http://www.csdn 123.com/html/blogs/20130601/18308.htm;

26.30 minutes to Master stl:http://net.pku.edu.cn/~yhf/usingstl.htm;

Smart POINTER:HTTP://HI.BAIDU.COM/DRSUYXTMTLBILTD/ITEM/5AED68F81B79AE13CE9F32BC of 27.boost Library;

28.Smart pointers in boost:http://www.drdobbs.com/cpp/smart-pointers-in-boost/184401507;

29. How to: Create and use shared_ptr instances: http://msdn.microsoft.com/zh-cn/library/vstudio/hh279669.aspx;

30.class template std::shared_ptr:http://www.cplusplus.com/reference/memory/shared_ptr/;

31.boost::shared_ptr class template:http://www.boost.org/doc/libs/1_53_0/libs/smart_ptr/shared_ptr.htm;

32.boost.shared_ptr must pay attention to some places: http://www.360doc.com/content/10/1221/15/1801810_80092270.shtml;

33.Smart pointers to boost your code:http://www.codeproject.com/articles/8394/smart-pointers-to-boost-your-code;

34.Pimpl Idiom:http://c2.com/cgi/wiki?pimplidiom;

35.c++ Copy constructor:http://www.tutorialspoint.com/cplusplus/cpp_copy_constructor.htm;

36.c++ Notes:OOP:Copy constructors:http://www.fredosaurus.com/notes-cpp/oop-condestructors/copyconstructors.html;

37.Assignment operators overloading in c++:http://www.tutorialspoint.com/cplusplus/assignment_operators_overloading.htm;

C + + Memory Management Learning Framework

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.