extern

    1熱度

    1回答

    考慮以下情形中一個.cpp文件中定義的全局變量: MYFILE.CPP: const int myVar = 0; //全局變量 AnotherFile.cpp: void myFun() { std::cout << myVar; // compiler error: Undefined symbol } 現在,如果我加extern const int myVar;在Anoth

    2熱度

    2回答

    我有一個global.h看起來像: #pragma once #include <memory> namespace qe { class SubSystemA; class SubSystemB; class SubSystemC; namespace Systems { extern std::unique_ptr<

    1熱度

    1回答

    我想編譯源代碼,但我需要將extern「C」添加到其他包中的許多頭文件中。所以我必須同時保持這些完好無損。 我想知道的是,我可以添加 #ifdef __cplusplus extern "C" { #endif 在頁眉和 #ifdef __cplusplus } #endif 頁腳爲每頭我感興趣的? 我能想到的是使用$awk將這些文件傳遞給編譯器,但我無法想出詳細信息。 是否有任何

    2熱度

    2回答

    爲什麼這個不行 extern int externed_variable; int variable = externed_variable; 雖然這確實 extern int externed_variable; int *variable_ptr = &externed_variable; 的編譯器錯誤,我從前者得到的是「表達必須有一個恆定的價值「。我正在使用MSVC。

    0熱度

    3回答

    我已經遇到了代碼意大利麪,我需要測量流量控制,即一次發送一個數據。我如何使用全局變量來解決這個問題?如果全局變量不起作用,訪問和修改可能處於不同類別的多個函數中的變量的方法是什麼 我試過以下(我正在粘貼部分代碼),但它給了我ld錯誤,我可以沒有解決。我想問問什麼是解決這個問題的最好和最乾淨的方法。 file1.h int data_received; //global variable clas

    -1熱度

    2回答

    考慮以下命名空間: // foo.h namespace foo { extern int bar; } //foo.cpp namespace foo { extern int bar = 42; } 有沒有辦法改變的bar其他地方的項目(即,命名空間不中)值? 我的意思是這樣的: // in some other .cpp file #include

    1熱度

    1回答

    我對C++非常陌生,我試圖盡力從一開始就擁有一個好的項目結構。 我現在用的是C庫libjpeg,幷包括在我的.cpp與使用 extern "C" { #include <jpeglib.h> } 它工作得很好,直到我刪除它放在一個頭文件,它現在給了我以下錯誤: inc/jpeg_utils.h: 6: inc/jpeg_utils.h: extern: not found inc

    3熱度

    1回答

    在下面的例子: file1.c中: #include <stdlib.h> #include <stdio.h> extern const char* szVers; extern const int iTest; extern const char cText[]; int main(int argc, char** argv) { printf("Result = %

    -1熱度

    1回答

    似乎每個Arduino庫都使用Arduino串行庫來打印調試消息。我目前正在嘗試將此庫整合到我的項目https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/I2Cdev中。我使用我自己的Python程序接收來自我的atmega 2560的消息。我想嘗試一些庫而不更改它們的源代碼,但由於串行庫,我不得不將它們的Serial.print()調

    1熱度

    1回答

    我有2 C文件在下面。從我讀的內容來看,我知道全局變量的默認存儲類是extern。如果我明確鍵入它,我得到未定義的變量錯誤。我在這裏錯過了什麼?這是否意味着當我省略extern關鍵字時,它就變成了一個定義,但是當我將它只輸入一個聲明時? file1.c中 #include <stdio.h> #include <stdlib.h> extern void file2function();