|
在gcc 4.4.7的机器上安装了intel 2017,发现仍然用不了c++11的特性;而在gcc 4.8.5的机器上,安装的intel编译器则可以使用c++11的特性。难道icpc是否支持c++11标准与该机器上的gcc版本有关?
如果无关,能否让icpc支持c++11?
PS1:在gcc 4.4.7的机器上运行 icpc -v 显示 icpc version 17.0.1 (gcc version 4.4.7 compatibility)。
PS2:在gcc 4.4.7的机器上:icpc a.cpp -std=c++11 -o aaa 报错error: namespace "std" has no member "nullptr_t";而在gcc 4.8.5的机器上,安装的intel编译器则无此问题。
PS3:a.cpp是一个测试是否支持c++11的例子(见下):
#include <cstddef>
#include <iostream>
void f(int* pi)
{ std::cout << "Pointer to integer overload\n";
}
void f(double* pd)
{ std::cout << "Pointer to double overload\n";
}
void f(std::nullptr_t nullp)
{ std::cout << "null pointer overload\n";
}
int main()
{ int* pi; double* pd;
f(pi);
f(pd);
f(nullptr);
}
|
|