【问题标题】:LNK2001 unresolved external symbol with CPP_XLOPERLNK2001 带有 CPP_XLOPER 的未解析外部符号
【发布时间】:2017-02-07 20:39:15
【问题描述】:

我正在使用 VS2015 和 C++ 将 XLL 从 32 位迁移到 64 位。

我开始更改数据类型。所以我将“int”切换为“_int64”。

CPP_XLOPER Create_XLOperHeader_form_Str(const wchar_t*aBegin,_int64 strlen,bool aTranspose){
	static CPP_XLOPER xlDefault(L" ");
	_int64 l = strlen;  

它给我带来了错误:

Error	
LNK2001	unresolved external symbol 
"class CPP_XLOPER __cdecl Create_XLOperTable_from_Str(wchar_t const *,__int64,bool,bool)" 
(?Create_XLOperTable_from_Str@@YA?AVCPP_XLOPER@@PEB_W_J_N2@Z)	

我想我必须修改“class CPP_XLOPER”,不是吗?

非常感谢任何提示, 提前谢谢; 剩余

【问题讨论】:

    标签: c++ 32bit-64bit xll


    【解决方案1】:

    链接器抱怨的最后两个参数类型为bool - ...,int64,bool,bool),而您修改的方法只有一个bool 类型的最后一个参数。要么您删除了另一种现有方法,要么您还从实现中删除了一个bool(只有您知道这是有意还是无意)。但是,是的,通常您应该修复函数声明以匹配定义。

    【讨论】:

    • 哦。你是对的。我应该看到这个。多谢!您是否确认 32 到 64 位迁移?干杯盈余
    猜你喜欢
    • 2020-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-08
    • 2014-07-26
    相关资源
    最近更新 更多