gpt4 book ai didi

C++ 并初始化 const 变量

转载 作者:太空宇宙 更新时间:2023-11-04 14:45:16 26 4
gpt4 key购买 nike

我想用名为“a”的 const int 变量创建类 Test。之后,我需要创建构造函数,其中变量“a”的值 = 10。我创建类测试并在 test.h 中创建 const int a; 在类 Test.h 和 test.cpp 中我有类似的东西:

#include "stdafx.h"
#include "Test.h"


Test::Test(void)
{
a = 10;
b = 20;
size = 20;
tekst[size];
}

Test::~Test(void)
{
}

这是 test.h:

#pragma once
class Test
{

const int a;



public:
Test(void);
~Test(void);
int b;
char *tekst;
int size;
static double d;
int y;
};

但我得到错误:

Error   1   error C2758: 'Test::a' : must be initialized in constructor base/member initializer list    c:\users\bożydar\documents\visual studio 2012\projects\consoleapplication1\consoleapplication1\test.cpp 6
Error 2 error C2166: l-value specifies const object c:\users\bożydar\documents\visual studio 2012\projects\consoleapplication1\consoleapplication1\test.cpp 7

最佳答案

错误说明了一切,a must be initialized in constructor base/member initializer list

Test::Test(void) : a(10) // Initializer list
{
...
}

关于C++ 并初始化 const 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13418650/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com