C# 与 C++ : inheritance specifics

标签 c# c++ inheritance porting

什么可以算作 C# 和 C++ OOP 标准定义之间的可见差异?我对与重载/覆盖方法的可见性相关的任何事情特别感兴趣。

C# 似乎实现了基于类链中堆栈调用顺序的 C++ 继承顺序的子集;真的吗?或者 C# OOP 与 C++ 有什么不同? (当然,C# 具有 native 反射支持,但我更感兴趣的是查找与继承或可能与合成相关的问题)。

是否存在一种众所周知的情况,其中 C++ 中的 class N: .. class B: A { } 无法访问基类数据(在任何可能的条件下)是可能的在 C# 中?


我强烈反对将此问题视为“已回答”。没有说“内部”,abstract classes can't be clearly evaluated to C++ protected constructor / virtual constructor classes (并且整个接口(interface)的东西与 C++ 不同)。因此,如果我有机会打开它,请不要关闭赏金 - 肯定会有更多差异。

最佳答案

c++ 支持多重继承,而 C# 不支持,这可能是最大的区别。

关于C# 与 C++ : inheritance specifics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19498428/

相关文章:

c++ - ioctl(sock, SIOCETHTOOL, &ifr) 为什么一直返回-1

c# - File.Copy() 和符号链接(symbolic link)

c# - 是否可以从控件创建 JPG?

c++ - 如何在 C++ 中确定一个巨大的二进制文件的大小

Python 类继承 : How to initialize a subclass with values not in the parent class

c# - 确定派生自哪个泛型类型对象

c++ - 传递基类指针

c# - ReSharper 声称我的表达总是正确的?它是正确的还是错误?

c# - 在 Visual Studio C# 中,有没有办法将 Web Config 转换应用于 Javascript 文件?

c++ - 返回 0 隐式