問題タブ [extern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - extern(al)問題
このコードをコンパイルできないのはなぜですか?
エラーメッセージが表示されます:
エラー2エラーLNK2019:未解決の外部シンボル "int __cdecl f(struct X)"
エラー3エラーLNK2019:未解決の外部シンボル "struct X __cdecl operator *(struct X、struct Y)"
もう1つの興味深い点は、実装をdef.hファイルに配置すると、エラーなしでコンパイルされることです。しかし、def.cppはどうですか?関数f(X)がすでに定義されているというエラーメッセージが表示されないのはなぜですか?ここでは、ODRルールを適用しないでください。私が抱えている2番目の懸念は、def.cppでfの戻り型をintからdouble intelliSenseに変更した場合、これはエラーとして強調されますが、プログラムはまだコンパイルされますか?なんで?
c - プレーン C の静的変数と extern
関数の外で静的変数を宣言することと、関数内で静的変数を宣言することの間に違いはありますか?
また、変数を static として宣言することと、単に extern 変数を宣言することの違いは何ですか?
c - -c オプションの有無にかかわらず、gcc が extern グローバル変数を解決しない
だから私はこの問題を抱えています:私は私のCプログラムでいくつかのexternグローバル変数を宣言しています。gcc に -c オプションを使用しないと、未定義の参照エラーが発生します。しかし、その -c オプションでは、リンクは行われません。つまり、実行可能ファイルが生成されていません。
では、どうすればこれを解決できますか?
これが私のmakefileです(Alexに感謝して書かれました)
そして、これが make の出力です: http://pastebin.com/NzsFetrn
私は approx.h (extern および global) で extern 変数を宣言しましたが、approx.c でそれらを呼び出そうとしましたが、そこでは機能しません。
c - Objective-C の int のグローバル配列が期待どおりに機能しない
私の MyConstants.h ファイルに...私は持っています:
一致する MyConstants.m ファイルには...次のものがあります。
他の *.m ファイルのそれぞれに...
私の viewDidLoad{} メソッドの 1 つの中に、次のものがあります。
「abc = (22) (3)」ではなく「abc = (0) (3)」と表示されるのはなぜですか?
これを期待どおりに機能させるにはどうすればよいですか?
cocoa-touch - extern を使用せずに、別のクラスで宣言された変数にアクセスするにはどうすればよいでしょうか?
externを使わずに、classAで宣言されているclassBの整数型変数にアクセスできますか?
ClassA *obj1 = [[ClassA alloc]init]; を使用したオブジェクトについては、そして、classA のオブジェクトをクラス B にアクセスしました。
しかし、私は int 、 float 、 NSTimeInterval でそれらを行うことができません。extern を使用せずにどうすればよいのでしょうか?
ありがとうございました。
c++ - extern キーワードは本当に必要ですか?
aaa
で定義されておりtest1.h
、 extern キーワードを使用していませんが、参照できますaaa
。
だから私はextern
本当に必要だと思いますか?
c - なぜ静的変数への外部リンクを行わないのですか?
extern int n
nが(別のファイルで)宣言されているとコンパイルされないのに、宣言されているとstatic int n
動作するのはなぜint n
ですか?(これらの宣言は両方ともファイルスコープにありました。)
基本的に、int n
ファイルスコープ内static int n
が同じスコープ内と同じではないのはなぜですか?それはexternに関連しているだけですか?もしそうなら、externはどうですか?
c++ - 外部変数の問題
2 つの cpp ファイルと 1 つのヘッダー ファイルがあり、両方の cpp ファイルに含まれています。こんな感じです:
abc.h
a.cpp
b.cpp
a.cpp をコンパイルすると、エラーは発生しなくなりました。しかし、b.cpp をコンパイルすると、「'key' への未定義の参照」というエラーが表示されます。このコードの問題を見つけるのを手伝ってください。
c++ - pro*C ファイルでの C 関数の呼び出し
pro*C プログラムにこれらの行があります。関数 initAverage(int i) は C 言語で定義されており、.pcc (Pro C++) ファイルでこの関数を呼び出そうとしています。
エラーが発生します
c++ - C++ 'new' キーワードと C
重複の可能性:
C++ でキーワード class を変数名として使用する
私が使用しているライブラリの C ヘッダー ファイルでは、変数の 1 つに「new」という名前が付けられています。残念ながら、私はこのライブラリを C++ プロジェクトで使用しており、変数名として 'new' が出現すると、コンパイラが異常終了します。私はすでに extern "C" { #include<...> } を使用していますが、この点では役に立たないようです。
「new」は C キーワードではないため、C 開発者としての観点からは、コードはまったく問題ありませんが、ライブラリ開発者にその変数の名前を変更するよう依頼する必要がありますか?