이것은 아마도 간단한 질문 일 뿐이지 만이를 해결하는 좋은 방법은 없습니다. 내가 인스턴스의 시리즈를 구성하려는런타임 중에 'const'매개 변수를 사용하여 클래스를 생성하십시오.
MyClass(const double value);
문제 되나 전달 된 값은 할 수있다 : I는 다음과 같은 생성자의 매개 변수로 const를 더블을 필요로하는 클래스를,이 API를 사용하고 있습니다 런타임 중에 알려진.
더 명확하게, 여기에 내가 무엇을했는지 있습니다 :
.H 파일 실행시
std::vector<MyClass> my_class_vec;
std::vector<double> my_value_vec
, 나는 값이 my_value_vec을 할당 할 수 있습니다. 나는 my_class_vec 구성하기 위해이 값을 사용하려면 :
.cpp 파일을
for(int i = 0; i < my_value_vec.size(); i++)
my_class_vec(my_value_vec[i]);
나는 const를 더블 매개 변수로 더블을 통과 할 수 없기 때문에 나는이 잘못 알고 . 그리고 인스턴스 구축시 잘못된 사용법도 있지만, 원하는대로 할 수있는 좋은 방법을 찾을 수 없습니다. 누구든지 아이디어가 있습니까? 당신의 의견에 진심으로 감사드립니다.
"* 왜냐하면 double을 const double 매개 변수로 전달할 수 없기 때문입니다. *"... 왜 안 되니? 또는 더 중요한 것은 코드가 컴파일되지 않는 이유와 아무 관련이 없습니다. –
감사합니다. @ Nicol Bolas! – Willie