“类不存在默认构造函数”C 错误
尝试在不提供构造函数参数的情况下实例化 GameCryptography 类的实例时,出现 IntelliSense 错误消息,指示 Blowfish 类不存在默认构造函数。
出现此错误因为 GameCryptography 构造函数尝试在不提供构造函数参数的情况下初始化 Blowfish 的嵌入实例。默认情况下,C 为类合成一个构造函数,而没有用户定义的构造函数。但是,如果类确实有用户定义的构造函数,则不会合成默认构造函数。
要解决该错误,可以实施以下策略之一:
Blowfish() : _algorithm(CBC) {}
GameCryptography(unsigned char key[]) : _blowfish(CBC) {}
class Blowfish { public: Blowfish(BlowfishAlgorithm algorithm) {} Blowfish() = default; };
以上是为什么在 C 中实例化带有缺少默认构造函数的嵌入类的类时会出现'类不存在默认构造函数”?的详细内容。更多信息请关注PHP中文网其他相关文章!