在 C++ 中,我可以从结构派生一个类吗

2023-06-04C/C++开发问题
1

本文介绍了在 C++ 中,我可以从结构派生一个类吗的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

问题说明了一切.我是否允许从结构派生一个类,还是应该创建一个嵌入我的结构并定义复制构造函数和 = 运算符以在两者之间移动的类?

The question says it all really. Am I allowed derive a class from a struct, or should I create a class that embeds my struct and defines copy constructors and an = operator to move between the two?

推荐答案

在 C++ 中 struct(几乎)与 class 同义(除了不同的默认访问级别),所以是的,你可以.

In C++ struct is (almost) synonymous to a class (except of different default access level), so yes, you can.

struct A {
// fields are public by default
};

class B: public A {
// fields are private by default
};

我不熟悉 MFC,但它看起来像是在尝试同时维护 C 和 C++ API.

I'm not familiar with MFC, but it looks like an attempt to maintain both C and C++ APIs.

这篇关于在 C++ 中,我可以从结构派生一个类吗的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

无法访问 C++ std::set 中对象的非常量成员函数
Unable to access non-const member functions of objects in C++ std::set(无法访问 C++ std::set 中对象的非常量成员函数)...
2024-08-14 C/C++开发问题
17

从 lambda 构造 std::function 参数
Constructing std::function argument from lambda(从 lambda 构造 std::function 参数)...
2024-08-14 C/C++开发问题
25

STL BigInt 类实现
STL BigInt class implementation(STL BigInt 类实现)...
2024-08-14 C/C++开发问题
3

使用 std::atomic 和 std::condition_variable 同步不可靠
Sync is unreliable using std::atomic and std::condition_variable(使用 std::atomic 和 std::condition_variable 同步不可靠)...
2024-08-14 C/C++开发问题
17

在 STL 中将列表元素移动到末尾
Move list element to the end in STL(在 STL 中将列表元素移动到末尾)...
2024-08-14 C/C++开发问题
9

为什么禁止对存储在 STL 容器中的类重载 operator&()?
Why is overloading operatoramp;() prohibited for classes stored in STL containers?(为什么禁止对存储在 STL 容器中的类重载 operatoramp;()?)...
2024-08-14 C/C++开发问题
6