C treatment of local variables

Siavoshkc

https://en.wikipedia.org/wiki/Resource_acquisition_is_initialization

There is an example of how RAII works. I always thought that C++ gets this behavior from C. That when you define a variable in a function, that variable becomes invalid when you leave the function. Though maybe the concept has no meaning when there is no object. C does not initialize structs but C++ does. Is that the difference? I am a bit confused.

eerorika

I always thought that ... That when you define a variable in a function, that variable becomes invalid when you leave the function

You've thought correctly.

You seem to be confused about what RAII is for. It is for management of dynamic resources such as dynamic memory allocations. It relies on language features such a constructors and destructors, which do not exist in C.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related