gpt4 book ai didi

c++ - 什么时候调用构造函数?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:13:25 24 4
gpt4 key购买 nike

如果我在函数中途定义一个类的局部变量实例而不使用指针和 new,构造函数是在进入函数时调用还是在定义函数的位置调用?

如果我在文件中全局定义一个类的另一个实例,那么在首次加载可执行文件时是否会调用该构造函数?如果多个线程正在访问 .dll 怎么办?

最后,您的回答是否会在 .dll、.so、.exe 和 linux 可执行文件中相同?

最佳答案

If I define a local variable instance of a class halfway down my function without using a pointer and new, does the constructor get called o entering the function or where it is defined?

定义时。

If I define another instance of a class globally within the file does that constructor get called when executable is first loaded?

是的。

What if multiple threads are accessing the .dll?

DLL 通常只为整个应用程序加载一次 - 事实上,DLL 也有一个入口点,该入口点由应用程序的线程调用,但全局变量初始化在此之前发生并且只发生一次。

关于c++ - 什么时候调用构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/452498/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com