我有一个数据类型,我可以实例化该类型的变量。像这样:
FetchAddr faddr(VirtualMemoryAddress( 0x0a ));
FetchAdr 的定义是:
struct FetchAddr {
VirtualMemoryAddress theAddress;
FetchAddr(VirtualMemoryAddress anAddress)
: theAddress(anAddress)
{ }
};
现在我有一个 faddr 是私有(或公共)变量的类
class FLEXUS_COMPONENT(BPred) {
static FetchAddr faddr;
public:
FLEXUS_COMPONENT_CONSTRUCTOR(BPred)
: base( FLEXUS_PASS_CONSTRUCTOR_ARGS )
{
faddr = VirtualMemoryAddress( 0x0a );
}
...
}
假设宏定义正确。
代码编译和链接没有任何问题。但是,当我启动程序时,它会说:
"undefined symbol: _ZN6nBPred14BPredComponent8faddr"
它说没有faddr的符号。
有什么想法吗?