我有一个特殊的情况,即 .cpp 文件中的一些静态初始化代码似乎没有被项目的其余部分实际使用。然而,静态初始化是足够重要的。有没有办法——除了对 .cpp 文件进行一些任意函数调用——来确保链接器包含这个静态初始化代码?(或任何可能会被排除在外的指针都会有所帮助)
我试图在 .h 文件中公开结构以满足链接器的要求——但这还不够。
使用带有预编译头文件的 visual-studio-2017以及cmake。
//init.cpp
#include "Pch.h"
//#pragma init_seg(lib)
struct Init {
Init(){std::cout << "in Init"<< std::endl ;}
}
Init init;