Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++11 包括-std=c++;11编译器选项是否正确 我想使用C++无序的数据映射结构,但是我认为我没有正确地传递-STD+C++ 11选项。 main.cpp包含main() A.cpp需要使用无序映射DS A.cpp和B.cpp可通过main.cpp访问。还有一个支持的头文件main.h_C++11_Makefile - Fatal编程技术网

C++11 包括-std=c++;11编译器选项是否正确 我想使用C++无序的数据映射结构,但是我认为我没有正确地传递-STD+C++ 11选项。 main.cpp包含main() A.cpp需要使用无序映射DS A.cpp和B.cpp可通过main.cpp访问。还有一个支持的头文件main.h

C++11 包括-std=c++;11编译器选项是否正确 我想使用C++无序的数据映射结构,但是我认为我没有正确地传递-STD+C++ 11选项。 main.cpp包含main() A.cpp需要使用无序映射DS A.cpp和B.cpp可通过main.cpp访问。还有一个支持的头文件main.h,c++11,makefile,C++11,Makefile,程序集的Makefile如下所示: CC = g++ SRC = main.cpp B.cpp A.cpp HDR = main.h OBJ = main.o B.o A.o FLAGS = -std=c++11 all: main $(CC) -o main $(OBJ) $(FLAGS) 我得到一个错误,告诉我A.cpp不知道选项-std=c++11。如果您能告诉我哪里出了问题,那就太好了。似乎在“all:main”之后添加以下内容,“make”成功了: A.o: A.c

程序集的Makefile如下所示:

CC  = g++
SRC = main.cpp B.cpp A.cpp
HDR = main.h
OBJ = main.o B.o A.o
FLAGS   = -std=c++11

all: main 
    $(CC) -o main $(OBJ) $(FLAGS)

我得到一个错误,告诉我A.cpp不知道选项-std=c++11。如果您能告诉我哪里出了问题,那就太好了。

似乎在“all:main”之后添加以下内容,“make”成功了:

A.o: A.cpp
     g++ -c A.cpp $(FLAGS)

编译器标志用于编译,而不是链接,因此您需要将它们传递给编译器,而不是链接器(编译器将源文件编译为.obj文件,链接器将这些.obj文件合并为可执行文件)。是的,这是挂国旗的地方。顺便说一下,一般来说,C++编译器标志使用CXXIG标志。谢谢这条信息。看起来我一直做得不正确。C++编译器标志的构建宏实际上是代码> CXXFLAGG/<代码> @ MalStand谢谢,没错,没错。打字错误唉,真希望我能编辑评论:你用的是什么编译器和版本?对于GCC4.3到4.6,标志应该是
-std=c++0x
。它是g++4.7.1,但Makefile的问题已在第一个答案中解决。