質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

1620閲覧

C++ どうやってインクルードしているのかわからない。

Tololololo

総合スコア118

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2018/10/12 05:17

編集2018/10/12 05:48

Xcodeを使用しています。ファイルのインクルードがどのように行われているのかがわかりません。

以下のようなディレクトリ構成のプログラムがあります。
イメージ説明
a.cppのa.hインクルードが下記のように書いてありました。

c++

1#include "object/a.h"

しかし、これはa.cppファイルから見てa.hのインクルードのはずなので単純に

c++

1#include "a.h"

とは書かれていません。

XcodeIDEの場合、インクルードパスを設定するには
"BuildSettings -> Header Search Path"
項目内においてインクルード先のファイルパスを書けばいいはずです。

このコードが示していることは、インクルードすべきファイルを全てHeader Search Path内に書いておけということなのでしょうか?

それとも、**#include "a.h"**っと書く以外のインクルード方法があるのでしょうか?

.
.
.

------ 追記 10/12 14:43 ------
インクルードファイルが見つからないエラーが出ました。
確認のため、ファイルパスとディレクトリ構造の画像を送ります。
もしかすると、Header Search Pathに入れるべき項目ではないのかもしれません。
Xcodeのリファレンスを探して確認して見ます。
何か間違いに気づいた方は教えてください。


イメージ説明

  1. これはHeader Search Pathに入力した値です。

現在の編集ディレクトリが表示されていることは確認できています。
イメージ説明
2. これは編集ディレクトリの内部構造です。
それぞれの実ファイルが存在していることは直接フォルダ内をみて確認済みです。
(これは、xcodeに全く別なディレクトリから参照することができる機能が存在するため、実ファイルが存在していない原因になるため、症状の確認として記載しています。)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

インクルードパスにPlayフォルダが設定してあれば、

#include "object/a.h"

でも問題ありません

CやC++でのincludeの優先順位

投稿2018/10/12 05:23

編集2018/10/12 05:28
y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Tololololo

2018/10/12 05:49

回答ありがとうございます。 しかしながら、未だエラーがでているじょうたいです。 エラーの内容は正常にファイルインクルードができていない(ファイルが見つからない)旨のエラーでした。
y_waiwai

2018/10/12 05:54

なら、そのPlayフォルダをインクルードパスに追加しましょう #質問の内容が変わってしまっている
fuzzball

2018/10/12 06:07

$(PROJECT_DIR)/$(TARGET_NAME)/ でいけると思う。
Tololololo

2018/10/12 06:12

$(PROJECT_DIR)/$(TARGET_NAME)/ ありがとうございます。 いけました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問