Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 644073
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T21:21:05+00:00 2026-05-13T21:21:05+00:00

In Visual Studio 2008 (C++) I have a class destructor (Let’s call this class

  • 0

In Visual Studio 2008 (C++) I have a class destructor (Let’s call this class ‘A’) which deletes a pointer to a different class (Let’s call this class ‘B’).

it looks like this:

A::~A()
{
    delete B;
    B = NULL;
}

My B class has a pointer to the instance of A that created it. In B’s destructor, I delete everything in B, except for the pointer to the instance of A.

In my debug build, it works okay, but fails on my release build..

In the debug build, right after B is deleted but before B is reassigned to NULL, The value of the pointer to the instance of A is something weird like 0xdddddddd.. However in the Release build, it is still pointing to the instance of A.. In both cases the pointer to B is still valid and B is not destroyed. What is going on and how do I fix it?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T21:21:06+00:00Added an answer on May 13, 2026 at 9:21 pm

    If I understand what you are saying, everything is working perfectly fine. After the call to delete B, the pointer held by variable B will be unchanged. It will still contain the address of the memory. The memory may or may not change; that part is completely undefined and depends on other things happening in the system at the moment and what the heap manager does.

    After the delete to B is completed (and B’s destructor has run), the memory in which B was stored may or may not be changed (again it depends on the heap manager). So the fact that B’s pointer to A is changed in one build type and not the other is fine. After the delete, you cannot use anything in B.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Environment: Team Foundation Server 2005 Visual Studio 2008 I have a reasonably large project
I'm creating a custom WSS workflow in Visual Studio 2008 and have a 'create
I have visual studio 2008 installed on my PC. Can anyone tell me what
I have a Visual Studio (2008) solution consisting of several projects, not all in
I have created a Visual Studio 2008 sp1 test suite web test that uploads
I have Visual Studio 2008 Professional and I am having issues with expanding and
I have Visual Studio 2008 with SP1 installed and it is crashing when I'm
I have installed Visual Studio 2008 and patch it with SP1. However, I cannot
I have Visual Studio 2008 Express SP1 installed on my machine. I tried to
I have a visual studio 2008 solution that includes an asp.net-hosted remoting project in

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.