【发布时间】:2016-01-09 10:31:17
【问题描述】:
那里。正如标题所说。
使用#include"test.h" 是合法的。
使用#include"test/test.h"也是合法的。
但是使用#include"../test.h"合法吗?
例如,#pragma once 在几乎所有编译器中都是合法的。
但这不是 C++ 的标准。
我找不到任何文件说..“保证”是父目录的含义。
谁能帮帮我?
【问题讨论】:
-
是的,它是合法的,但请确保每当您制作二进制文件时,二进制目录的父目录包含该 test.h 文件。
-
像“../test.h”这样的相对路径是完全合法的。该路径将相对于您的“包含路径”应用。因此,您的包含路径包括正在编译的当前源文件的文件夹,以及您使用项目设置配置的其他文件夹。所以它会在每一个的父文件夹中寻找一个 test.h。
-
可能我没说清楚。 C++标准保证..是指父目录吗?
-
@MrLister 我的评论关注的是,二进制文件的父目录应该包含 test.h 文件..
-
@EdHeal:为什么“尝试”它会告诉 OP 它是否是合法的 C++?
标签: c++ include include-path