📄 value.cpp
字号:
#using <mscorlib.dll>
using namespace System;
__gc class Employee {
public:
Employee(String * s, int d) {_name = s; _dept = d;};
__property String * get_name() {return _name;}
__property int get_dept() {return _dept;}
private:
String * _name;
int _dept;
};
__gc class Manager {
public:
__property Employee * get_Report(String * s) {
for(pEmp = Reports; pEmp && (pEmp -> emp -> name != s);
pEmp = pEmp -> next);
if (pEmp) return pEmp -> emp; else return 0;
}
__property void set_Report(String* s, Employee* e) {
for(pEmp = Reports; pEmp && (pEmp -> emp -> name != s);
pEmp = pEmp -> next);
if (!pEmp) {
EmpList * emp1 = new EmpList;
emp1 -> emp = e;
emp1 -> next = Reports;
Reports = emp1;
}
}
private:
__gc struct EmpList {
Employee * emp;
EmpList * next;
};
EmpList * pEmp;
static EmpList * Reports = 0;
};
/* Employee* Report[ String* ]; */ // 假的数组成员
int main() {
Manager* Ed = new Manager;
Employee* Bob = new Employee(S"Bob Smith", 12);
Employee* Gus = new Employee(S"Gus Jones", 18);
// track Ed's reports
Ed->Report[ Bob->name ] = Bob; //按照字符串类型索引
Ed->Report[ Gus->name ] = Gus; //按照字符串类型索引
Console::WriteLine(Ed->Report[ Bob->name ]->dept);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -