問題タブ [header-files]

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.

0 投票する
31 に答える
745667 参照

c++ - #includeの違いは何ですかおよび#include"filename"?

includeCおよびC++プログラミング言語では、次のように、山かっこを使用することとステートメントで引用符を使用することの違いは何ですか?

  1. #include <filename>
  2. #include "filename"
0 投票する
4 に答える
275 参照

c - Cエディターで自動定義...なぜですか?

EclipseがC プロジェクトで新しいファイル ( .cまたは.h#defineファイル) を作成すると、エディターは常に次のようにファイルの先頭に を#define自動作成します。このようなファイルの

私は他の編集者もこれを行っているのを見てきました (Codewright と SlikEdit だと思います)。#defines問題なく削除できるので、エディターに対して何もしていないようで、それらを使用する理由が思いつきませ 。なぜそこにいるのか誰か知っていますか?

0 投票する
17 に答える
18284 参照

c++ - C ++のヘッダーファイルにすべてのコードを入れることの長所と短所?

(ほとんど) すべてのコードがヘッダー ファイルに存在するように、C++ プログラムを構成できます。基本的には、C# または Java プログラムのように見えます。.cppただし、コンパイル時にすべてのヘッダー ファイルを取り込むには、少なくとも 1 つのファイルが必要です。今では、この考えを絶対に嫌う人がいることを私は知っています. しかし、これを行うことの説得力のある欠点は見つかりませんでした。いくつかの利点を挙げることができます:

[1] コンパイル時間の高速化。.cpp ファイルは 1 つしかないため、すべてのヘッダー ファイルは 1 回だけ解析されます。また、1 つのヘッダー ファイルを複数回インクルードすることはできません。そうしないと、ビルドが中断されます。別のアプローチを使用してコンパイルを高速化する方法は他にもありますが、これは非常に簡単です。

[2] 循環依存関係を完全に明確にすることで、循環依存関係を回避します。ClassAinがinClassA.hに循環依存している場合、前方参照を配置する必要があります。(これは、コンパイラが循環依存関係を自動的に解決する C# および Java とは異なることに注意してください。これは、IMO の悪いコーディング プラクティスを助長します)。繰り返しになりますが、コードがファイル内にある場合は循環依存を回避できますが、実際のプロジェクトでは、誰が誰に依存しているかがわからなくなるまで、ファイルにランダムなヘッダーが含まれる傾向があります。ClassBClassB.h.cpp.cpp

あなたの考え?

0 投票する
3 に答える
4384 参照

header-files - 外部依存関係 / ヘッダー ファイル

Windows MSVC6.0 コンパイラで、1 つのプロジェクトを含むワークスペースがある場合、Header Files フォルダーにはどのファイルがあり、External Dependenciesフォルダーにはどのファイルがありますか?

明示的に含まれているファイル (#include <*.h> はHeader Filesフォルダーにあり、追加されたヘッダー ファイルに含まれるファイルはExternal Dependenciesフォルダーにあると思いましたが、そうではないようです。

では、2つの違いは何ですか?

-広告

0 投票する
9 に答える
315208 参照

c++ - ヘッダー ファイルと .cpp ファイルがあるのはなぜですか?

C++ にヘッダー ファイルと .cpp ファイルがあるのはなぜですか?

0 投票する
9 に答える
13261 参照

c - Cでのconst値の定義

すべてのコードが*.c/*.hファイルのペアで編成されているCプロジェクトがあり、1つのファイルで定数値を定義する必要がありますが、他のファイルでも使用されます。この値をどのように宣言して定義する必要がありますか?

static const ...それはファイルのようにすべき*.hですか?ファイルのようextern const ...に、*.hファイルで定義されてい*.cますか?int値がプリミティブデータ型( 、、doubleなど)ではなく、achar *またはaであるかどうかは、どのように重要structですか?(私の場合はですがdouble。)

ファイル内のものを定義すること*.hは、一般的には良い考えとは思えません。ファイルで物事を宣言する必要があり*.hますが、ファイルでそれらを定義し*.cます。ただし、extern const ...コンパイラは値をインライン化できないため、このアプローチは非効率的であるように見えます。代わりに、常にそのアドレスを介してアクセスする必要があります。

この質問の本質は次のとおりです。複数の場所で値を使用するには、Cのファイルでstatic const ...値を定義する必要がありますか?*.h

0 投票する
6 に答える
1748 参照

c++ - C++ ヘッダー ファイル - 混乱!

socket.h には game.h が既に含まれているため、socket.h を game.h に含めようとすると問題が発生します。このような問題を解決するにはどうすればよいですか?

0 投票する
11 に答える
76409 参照

c++ - C++ 名前空間とインクルード

C++ プログラムでディレクティブusing namespaceとディレクティブの両方が必要なのはなぜですか?include

例えば、

#include <iostream>他のものをただ持っているだけ、またはただ持っていusing namespace stdて取り除くだけでは、なぜ十分ではないのでしょうか?

(Java との類推を考えています。ここでは、import java.net.*からすべてをインポートしjava.netます。他に何もする必要はありません。)

0 投票する
5 に答える
19210 参照

c++ - C++ ヘッダー ファイルの使用に関するベスト プラクティス

ヘッダーファイルの使用法について、次の疑問があります。

1 - コメントの後に配置するガードを含める

Herb Sutter は、著書「C++ コーディング標準」の中で、上記のようなコードには問題があると述べています。彼は、「#ifndef」ステートメントはヘッダー ファイルの最初の行に表示する必要があると言っています。私はこれを説得力があるとは感じていません。これはヘッダーファイルの皆さん/ギャルが続きますか?

2 - ヘッダー ファイルで名前空間を使用する

上記のコードは正しい慣行を使用していますか? つまり、ヘッダー ファイルで名前空間を使用しますか? ヘッダー ファイルに名前空間をインポートすることが無意味である理由はわかっていますが、上記のような宣言はどうでしょうか。

上記の方法が正しい場合、別の名前空間にあるクラスの「前方宣言」をどのように行うのですか? のようですか

「循環依存」を回避する唯一の方法は「前方宣言」ですね?

0 投票する
6 に答える
103358 参照

c++ - C++ でヘッダー ファイルに関数定義を記述する

小さな関数がたくさんあるクラスがあります。小さな関数とは、処理を行わずにリテラル値を返すだけの関数を意味します。何かのようなもの:

ヘッダーファイル「Foo.h」とソースファイル「Foo.cpp」を作成しました。ただ、関数が非常に小さいので、ヘッダーファイル自体に入れることを考えています。次の質問があります。

  1. これらの関数定義をヘッダー ファイルに記述した場合、パフォーマンスやその他の問題はありますか? 私はこのような多くの機能を持っています。
  2. 私の理解では、コンパイルが完了すると、コンパイラはヘッダー ファイルを展開し、それが含まれている場所に配置します。あれは正しいですか?