gpt4 book ai didi

c++ - 确定非对象变量是否在 C++ 中初始化

转载 作者:行者123 更新时间:2023-11-30 03:09:45 39 4
gpt4 key购买 nike

那么,假设在 C++ 的类中,我有各种成员变量。结构、字符串、整数等。可以是任何东西。这些变量可以或不可以由该类对象的初始化来设置。给定 int a、float b、char c,有时它们都可以被设置或一个都不能设置。设置它们时,可以将它们设置为变量的任何可能值。我想找到一些设置方法,并确定是否已设置变量而没有:

1) 大量类型转换。我总是可以创建一个具有 bool 值的 Data_Value 装饰器类,并将其模板化为任何给定变量。这需要调用 a_data_value.value 和 a_data_value.isInitialized。

2) 许多额外的 bool 变量。我宁愿没有 bool a_initialized、bool b_initialized。

我真正想做的是这样的:

Python add to a function dynamically

在 C++ 中,具有任何和所有变量,包括原语。我知道这是一项艰巨的任务,我完全期待悲观的答案。

最佳答案

你是对的。无法在运行时确定基元是否已“设置”。一些编译器会在某些情况下警告您使用未初始化的值,但这根本不能保证。

关于c++ - 确定非对象变量是否在 C++ 中初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3866623/

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