私は数日前にC ++でコーディングを始めました。私はコードを書くための私のOSとしてWindowsを使用しています。私はすべての「よく書かれた」コードを1か所に保管してきました。今、私はこれらのコードの使用を必要とするプロジェクトに取り組んでいます。そこで、必要なファイルをヘッダーファイルとしてプロジェクトにインクルードする予定でした。しかし、私のプロジェクト「自己完結型」にするために、私は私が必要とするこれらのフォルダのショートカットを作成し、私の新しいプロジェクトのソースフォルダに保管して「のショートカットに相対パスを使用することを決めたinclude
私のプロジェクトでは、」ステートメント。
しかし、エラーが発生します。でショートカットに相対的な(または、一般的には、絶対的な)パスを使用するにはどのような方法があるinclude
のウィンドウでC ++の文は?
ありがとう。
それは本当にヘッダーファイルをどのようにインクルードするかに依存します。
たとえば、二重引用符で囲む場合
#include "some_header_file.h"
その場合、相対パスは現在のファイルの場所からのものです。
たとえば、山かっこを使用する場合
#include <some_header_file.h>
次に、相対パスはシステムのインクルードパスに基づいています。
システムインクルードパスにはいつでもパスを追加できます。それを行う方法は、環境とコンパイラによって異なります。Visual Studioを使用している場合は、プロジェクトのプロパティ]ダイアログボックスに移動し、「C / C ++」/「全般」タブでは、あなたがディレクトリを追加することができますここで、「追加のインクルードディレクトリ」と呼ばれるフィールドがあります。(これはVS 2015用であり、他のバージョンでは少し異なる場合があります。)
二重引用符を含めることについて。プロジェクトの階層は次のようになりますと言うことができます(上のディスク!):
プロジェクト | -インクルード | -ソース | ` - MoreSource ` -その他
ではProject/Source
、あなたのソースファイルを持ち、そのうちの一つは、からヘッダファイルを含める場合Project/Include
、それは次のようになります
#include "../Include/header.h"
あなたがソースファイルを持っている場合今Project/Source/MoreSource
それがない場合がありますのでになり、同じヘッダファイルをインクルードするには
#include "../../Include/header.h"
Project/Include
ディレクトリをシステムヘッダー検索パスに追加すると便利な場合があります。ファイルが見つからない場合、プリプロセッサはシステムパスも検索するため、二重引用符を使用してファイルを含めることができますが、「完全な」相対パスは必要ありません。Project/Include
システムヘッダーパスに追加すると、次のように記述できます。
#include "header.h"
または
#include <header.h>
ただし、実際のシステムヘッダーファイルと同じ名前のヘッダーファイルがある場合は、問題が発生する可能性があるので注意してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加