mirror of
https://codeberg.org/KeybadeBlox/JSRF-Decompilation.git
synced 2026-02-20 02:07:02 +03:00
Decompiling C++: Add static object initialization
This commit is contained in:
parent
ee519090c1
commit
8c9f622ab5
1 changed files with 7 additions and 1 deletions
|
|
@ -117,7 +117,13 @@ its lifetime (e.g. it goes out of scope), which can lead to inclusion in
|
||||||
exception handling code or just being called at the end of a code block even if
|
exception handling code or just being called at the end of a code block even if
|
||||||
the source code doesn't invoke it explicitly. This automatic resource
|
the source code doesn't invoke it explicitly. This automatic resource
|
||||||
management is often called part of C++'s RAII (resource acquisition is
|
management is often called part of C++'s RAII (resource acquisition is
|
||||||
initialization) design.
|
initialization) design. Lastly, objects with constructors that exist for the
|
||||||
|
lifetime of the program (e.g. global variables or static local variables) have
|
||||||
|
special treatment, having their constructor run before `main()` and their
|
||||||
|
destructor run on program exit. In an Xbox game specifically, the `_cinit()`
|
||||||
|
function called by `mainXapiStartup()` walks a list of function pointers, with
|
||||||
|
each called function calling an object's constructor and registering its
|
||||||
|
destructor with `atexit()`.
|
||||||
|
|
||||||
Virtual methods are methods that can be overridden on child classes. They're
|
Virtual methods are methods that can be overridden on child classes. They're
|
||||||
not called directly, but instead called through a hidden first member that
|
not called directly, but instead called through a hidden first member that
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue