首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你觉得我该怎么解决Error C2664呢?

你觉得我该怎么解决Error C2664呢?
EN

Stack Overflow用户
提问于 2021-08-14 17:34:16
回答 1查看 37关注 0票数 0

我有点小问题。在编译时,我得到了标题中提到的错误。出现错误的行是pItemData->GetName(),行。

但即使我更改了顺序,该行上的任何内容也会给出相同的错误。

当我删除#ifdef标签时,它们的问题就消失了。但是当我添加这些的时候,这个问题就出现了。

代码语言:javascript
复制
'void CPythonTextTail::RegisterItemTextTail(DWORD,const char *,CGraphicObjectInstance *,char *)' : 3 arguments cannot be converted from 'const char *' to 'CGraphicObjectInstance *'.

相关文件和定义(.h文件):

代码语言:javascript
复制
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
void CPythonTextTail::RegisterItemTextTail(DWORD VirtualID, const char* c_szText, 
CGraphicObjectInstance* pOwner, char * evolutionMergeText)
#else
void CPythonTextTail::RegisterItemTextTail(DWORD VirtualID, const char* c_szText, 
CGraphicObjectInstance* pOwner)
#endif

错误行(.cpp文件)

代码语言:javascript
复制
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
char evolutionMergeText[100]; char evolutionText[6][10] = { "", "Yaygın ", "Seyrek ", "Nadir 
", "Efsane ", "Eşsiz " };
sprintf(evolutionMergeText, "%s%s", evolutionText[evolution], pItemData->GetName());
#endif
rkTextTail.RegisterItemTextTail(
    dwVirtualID,
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
    evolutionMergeText,
#endif
    pItemData->GetName(),
    &pGroundItemInstance->ThingInstance

 );
EN

回答 1

Stack Overflow用户

发布于 2021-08-14 18:14:22

参数顺序错误。evolutionMergeText参数是函数中的最后一个参数。更改顺序

代码语言:javascript
复制
rkTextTail.RegisterItemTextTail(
    dwVirtualID,
    pItemData->GetName(),
    &pGroundItemInstance->ThingInstance
#ifdef ENABLE_WEAPON_EVOLUTION_SYSTEM
    , evolutionMergeText
#endif
 );
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68785620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档