C++;不允许使用constexpr函数定义 我尝试学习C++,特别是C++ 11,因为我们主要学习C,并且在尝试“CONTXPR”可以做什么的时候遇到了一个错误。

C++;不允许使用constexpr函数定义 我尝试学习C++,特别是C++ 11,因为我们主要学习C,并且在尝试“CONTXPR”可以做什么的时候遇到了一个错误。,constexpr,Constexpr,测试1: #include <iostream>; using namespace std; int main() { int x = 3; int y = 4; constexpr int Sum(int a, int b) {return a + b;} cout << Sum(x,y); return 0; } #包括; 使用名称空间std; int main() { int x=3; int y=4; constexp

测试1:

#include <iostream>;

using namespace std;

int main()
{
    int x = 3;
    int y = 4;
    constexpr int Sum(int a, int b) {return a + b;}
    cout << Sum(x,y);
    return 0;
}
#包括;
使用名称空间std;
int main()
{
int x=3;
int y=4;
constexpr int Sum(int a,int b){返回a+b;}

无法尝试将
constepr
函数定义移到
main()
之外尝试将
constepr
函数定义移到
main()
之外您的问题

在预处理器指令(
#include
)后加上分号。除非
#define
-ing某物,否则千万不要这样做。这会让编译器发疯。此外,你不能在函数内定义函数。你必须在全局或类范围外定义它

解决方案

删除
#include
后面的分号。
将constexpr定义移到
main()上方
您的问题

在预处理器指令(
#include
)后加上分号。除非
#define
-ing某物,否则千万不要这样做。这会让编译器发疯。此外,你不能在函数内定义函数。你必须在全局或类范围外定义它

解决方案

删除
#include
后面的分号。
将constexpr定义移到
main()

哦,是的,那是我的错误。哦,是的,那是我的错误。
#include <iostream>;

using namespace std;

int main()
{
    int x = 3;
    int y = 4;
    constexpr int Sum() {return 3+4;}
    cout << Sum();
    return 0;
}