最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++調(diào)用C函數(shù)報(bào)錯(cuò)無(wú)法解析的外部命令/無(wú)法解析的外部符號(hào)問(wèn)題

 更新時(shí)間:2023年08月02日 09:29:38   作者:Jeady5  
這篇文章主要介紹了C++調(diào)用C函數(shù)報(bào)錯(cuò)無(wú)法解析的外部命令/無(wú)法解析的外部符號(hào)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C++調(diào)用C函數(shù)報(bào)錯(cuò)無(wú)法解析的外部命令/外部符號(hào)

話不多說(shuō),原因在于extern “C”{} 的添加位置, 小主犯得錯(cuò)誤是,C++ 中包含的C 的頭文件,沒(méi)有包含在 extern “C”{}的花括號(hào),小主只把C++ 中的函數(shù)包含在了其中,把頭文件給忽略掉了。

錯(cuò)誤

#include "c_header.h"
extern "C"{
?? ?//...
}

正確

extern "C"{
#include "c_header.h" // 注意這行代碼的位置
?? ?//...
}

有沒(méi)有戳中你

關(guān)于“無(wú)法解析外部命令”的幾個(gè)常見(jiàn)原因

這次接手的項(xiàng)目中生成后遇到了類似問(wèn)題,經(jīng)過(guò)參考排查發(fā)現(xiàn)外部C++文件中extern聲明的函數(shù)類型與原定義的函數(shù)類型不一致。但由于報(bào)錯(cuò)實(shí)在奇怪,我也是第一次遇到這種問(wèn)題,花了整整兩天才將問(wèn)題解決掉。

無(wú)法解析的外部符號(hào)的情況發(fā)生原因

1.沒(méi)有加入相應(yīng)lib庫(kù)文件.

2.類成員有聲明,但沒(méi)有定義.或者定義與聲明不符合.

3.沒(méi)有包含源文件.例如

extern int i;?
extern void g();
void f()
{
i++;
g();
}
int main()
{
}

4.符號(hào)定義在編譯為 C 程序的文件中,而符號(hào)是在 C++ 文件中不帶 extern "C" 修飾符聲明的。

在此情況下,請(qǐng)修改聲明,例如不是使用:

extern int i;
extern void g();

而使用:

extern "C" int i;
extern "C" void g();

同樣,如果在將由 C 程序使用的 C++ 文件中定義符號(hào),請(qǐng)?jiān)诙x中使用 extern "C"。

5.符號(hào)定義為靜態(tài),但稍后在文件外部被引用。

沒(méi)有定義靜態(tài)類成員。例如,應(yīng)單獨(dú)定義下面類聲明中的成員變量 si:

#include <stdio.h>
struct X {
static int si;
};
// int X::si = 0; // uncomment this line to resolve
void main()
{?
? ? X *px = new X[2];?
? ? printf("/n%d",px[0].si); // LNK2019
}

6.調(diào)用的函數(shù)參數(shù)輸入不正確。2019

另外類出常見(jiàn)錯(cuò)誤:

cannot instantiate abstract class

一是繼承類沒(méi)有重寫(xiě)純虛函數(shù),二是該類是抽象類

本次遇到的問(wèn)題是最簡(jiǎn)單的返回類型錯(cuò)誤,即在A.cpp中定義了形如:

QString B(DcmDataset* ds, const Tag &tag, QSqlQuery& query, const QString& str, const QVariant& Varient)
{
...
}

但在外部文件extern聲明的時(shí)候?qū)戝e(cuò)成:

extern void B(DcmDataset* ds, const Tag &tag, QSqlQuery& query, const QString& str, const QVariant& Varient);

由此導(dǎo)致,此問(wèn)題在生成之前編譯器(vs2010)是找不出來(lái)的,在生成時(shí)報(bào)的錯(cuò)也很容易讓人摸不著頭腦。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++虛函數(shù)表和虛析構(gòu)介紹

    C++虛函數(shù)表和虛析構(gòu)介紹

    這篇文章主要介紹了C++虛函數(shù)表和虛析構(gòu),虛函數(shù)表是C++實(shí)現(xiàn)多態(tài)的基礎(chǔ),多態(tài)是面向?qū)ο蟮娜筇匦灾唬旅嫖恼挛覀円黄饋?lái)看看詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • C語(yǔ)言二叉排序(搜索)樹(shù)實(shí)例

    C語(yǔ)言二叉排序(搜索)樹(shù)實(shí)例

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言二叉排序樹(shù)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • C++入門(mén)之list的使用詳解

    C++入門(mén)之list的使用詳解

    這篇文章主要為大家介紹了C++入門(mén)之list的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-11-11
  • C++友元函數(shù)和友元類的使用與區(qū)別

    C++友元函數(shù)和友元類的使用與區(qū)別

    本文主要介紹了C++友元函數(shù)和友元類的使用與區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • C++映像劫持后門(mén)實(shí)例分析

    C++映像劫持后門(mén)實(shí)例分析

    這篇文章主要介紹了C++映像劫持后門(mén),實(shí)例分析了C++映像劫持后門(mén)的原理與相關(guān)實(shí)現(xiàn)技巧,有助于進(jìn)一步了解后門(mén)的原理,需要的朋友可以參考下
    2015-04-04
  • C++破壞MBR的代碼

    C++破壞MBR的代碼

    這篇文章主要介紹了C++破壞MBR的代碼,涉及到對(duì)硬盤(pán)的主引導(dǎo)記錄的破壞性操作,具有一定的參考價(jià)值,需要的朋友可以參考下
    2014-10-10
  • c語(yǔ)言動(dòng)態(tài)數(shù)組示例

    c語(yǔ)言動(dòng)態(tài)數(shù)組示例

    這是一個(gè)簡(jiǎn)單的動(dòng)態(tài)分配數(shù)組大小的例子,需要的朋友可以參考下
    2014-04-04
  • 解析C++編程中異常相關(guān)的堆棧展開(kāi)和throw()異常規(guī)范

    解析C++編程中異常相關(guān)的堆棧展開(kāi)和throw()異常規(guī)范

    這篇文章主要介紹了C++編程中異常相關(guān)的堆棧展開(kāi)和throw()異常規(guī)范,throw()規(guī)范部分文中結(jié)合了C++11標(biāo)準(zhǔn)的新特性來(lái)講,需要的朋友可以參考下
    2016-01-01
  • 探究C++中指針與數(shù)組運(yùn)算符優(yōu)先級(jí)

    探究C++中指針與數(shù)組運(yùn)算符優(yōu)先級(jí)

    C++中與指針和數(shù)組相關(guān)的運(yùn)算符優(yōu)先級(jí),通過(guò)實(shí)際代碼示例解釋了運(yùn)算符的左結(jié)合與右結(jié)合方式,以及如何使用圓括號(hào)()來(lái)改變默認(rèn)的結(jié)合順序,文章還提供了一個(gè)優(yōu)先級(jí)表,列出了運(yùn)算符的優(yōu)先級(jí)和結(jié)合性,幫助讀者更好地理解復(fù)雜表達(dá)式中運(yùn)算符的調(diào)用順序
    2024-10-10
  • C語(yǔ)言逗號(hào)運(yùn)算符的具體使用

    C語(yǔ)言逗號(hào)運(yùn)算符的具體使用

    本文詳細(xì)解析了C語(yǔ)言中的逗號(hào)運(yùn)算符,包括其語(yǔ)法、優(yōu)先級(jí)、應(yīng)用場(chǎng)景及注意事項(xiàng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-12-12

最新評(píng)論

阜南县| 临朐县| 邳州市| 娄底市| 晋宁县| 鄂伦春自治旗| 卓尼县| 肃宁县| 宣威市| 通辽市| 冷水江市| 将乐县| 永寿县| 兴安盟| 怀宁县| 凌云县| 襄汾县| 巴林左旗| 东兰县| 怀安县| 鄱阳县| 大田县| 虹口区| 柳林县| 韩城市| 兴义市| 巴楚县| 茶陵县| 浑源县| 井陉县| 峨山| 三河市| 任丘市| 祁阳县| 虞城县| 惠安县| 龙陵县| 海南省| 沧源| 马鞍山市| 塘沽区|