Переменные участника не обновляются, когда общий указатель и объект обертывают ихC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Переменные участника не обновляются, когда общий указатель и объект обертывают их

Сообщение Anonymous »

Я разработал небольшой класс: < /p>

Код: Выделить всё

class model_naive
{
private:
double param1_;
double param2_;

std::vector                params_pointers_;
std::vector            params_labels_;

void setParamsPointers()
{
params_pointers_[0] = &param1_;
params_pointers_[1] = &param2_;

params_labels_[0] = "param1";
params_labels_[1] = "param1";
}

public:
model_naive(double param1, double param2) : param1_(param1), param2_(param2), params_pointers_(2), params_labels_(2)
{
setParamsPointers();
}
double param1() const
{
return param1_;
}
double param2() const
{
return param2_;
}
const std::vector& parameters()
{
return params_pointers_;
}
const std::vector& parameter_labels() const
{
return params_labels_;
}
void tilt_params(const double epsilon)
{
for (auto& param : parameters())
{
*param += epsilon;
}
}
void print_params() const
{
for (const auto& [param, param_label] : std::ranges::views::zip(const_cast(this)->parameters(), parameter_labels()))
{
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79717190/member-variables-not-updating-when-shared-pointer-and-object-wrap-them[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»