top | item 34466871

(no title)

xjwm | 3 years ago

I've written code like this in C to create library functions that will be linked in to other projects, but where there is no 'main' function in the C file. Do people use C++ the same way, or is it best practice to include 'main?'

discuss

order

MathMonkeyMan|3 years ago

It's the same as in C. The observation here is that variables with static storage duration can be initialized by running user code before main() begins.

colejohnson66|3 years ago

It’s also the same in .NET. If your Main() function references types that have a static constructor, the constructors could run before Main().

It’s a surprising thing when one first discovers it, but it makes a lot of sense.

xjwm|3 years ago

Oh! Thank you. That makes much more sense now.