use*_*752 8 c# private public subclass
我最近开始学习C#,但我有一些C++的背景知识.我想知道我会怎样做
class employee
{
public:
....
... methods ...
....
private:
....
... private member variables ....
....
}
Run Code Online (Sandbox Code Playgroud)
我尝试在C#中这样做,但它不喜欢"public:..."和"private:..."来制作公共或私人之后的所有内容.
另外,我已经看到了这个在C#中获取和设置的东西,所以你不需要做一个私有成员变量的方式,然后创建一个函数来返回该变量?
虽然我在这,但是如何在C#中创建子类?在C#中,新类在不同的选项卡中打开,所以我对如何操作感到困惑.
Joa*_*son 16
你不能像在C++中那样在C#中创建"块"公共或私有,你必须为每个成员添加可见性(和实现).在C++中,你通常会这样做;
public:
memberA();
memberB();
private:
memberC();
Run Code Online (Sandbox Code Playgroud)
...并在其他地方实施您的成员,而在C#中,您需要这样做;
public memberA() { ...implement your function here... }
public memberB() { ...implement your function here... }
private memberC() { ...implement your function here... }
Run Code Online (Sandbox Code Playgroud)
至于属性,请将它们视为自动实现set,get以及您可以选择自己实现或让编译器实现它们的方法.如果你想自己实现它们,你仍然需要字段来存储你的数据,如果你把它留给编译器,它也会生成字段.
继承的工作方式与将事物放在同一个文件中的情况完全相同(这对于更大的C++项目来说可能不是一个好主意).像往常一样继承,只要你在同一个命名空间或导入基类的命名空间,你就可以无缝地继承;
using System.Collections; // Where IEnumerable is defined
public class MyEnumerable : IEnumerable { // Just inherit like it
... // was in the same file.
}
Run Code Online (Sandbox Code Playgroud)