이름이 "a"인 const int 변수를 사용하여 클래스 Test를 만들고 싶습니다. 그 후 변수 "a"가 값 = 10을 얻는 생성자를 생성해야합니다. I 클래스 테스트를 만들고 test.h 내가 수업 Test.h에 const int a;
을 만들고 Test.cpp에 내가 그런 일이 :C++ 및 const 변수 초기화
#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
Google에서 * constructor base/member initializer list *를 검색하면 좋은 결과를 얻을 수 있습니다. – chris