【发布时间】:2017-04-24 15:11:07
【问题描述】:
我在 Visual Studio 2015 sp3 中使用 C++。 由
#pragma init_seg(compiler)
,我先初始化一些静态变量(用于内存管理)。 https://msdn.microsoft.com/en-us/library/7977wcck.aspx
但是,有
#pragma init_seg(compiler)
在 wcerr.cpp(Microsoft Visual Studio 14.0\VC\crt\src\stl\wcerr.cpp) 中,所以这些对象在我的对象之前初始化。
我可以通过任何编译/链接选项强制我的对象在 wcerr.cpp 对象之前首先初始化吗?
【问题讨论】:
-
为什么顺序很重要?
-
@Cheersandhth.-Alf 因为我的对象初始化了自定义内存系统,如果其他一些对象在我的对象之前调用 new ,就会出错。 :(
-
所以实际的问题是 - how to override a memory allocator in MSVC
标签: c++ visual-studio visual-studio-2015 pragma static-variables