C++ 友元函数是否可以创建新对象?C++;

C++ 友元函数是否可以创建新对象?C++;,c++,class,function,friend,C++,Class,Function,Friend,你好,我正在尝试做一个学校系统的小模拟 我想知道我是否有两门课: 1:校长 2:老师 那么,班主任的方法是否有可能创造新的班主任对象呢 以下是我想做的(方法AddTeacher): 另外,我想问一下是否有可能做到以下几点:我想做一个约束,它只允许类主体的一个对象存在。如果可能的话,你能告诉我怎么做吗 先谢谢你 p.S.addTeacher看起来是这样的: void addTeacher(char* nameofobject,char* name,char* position,int wage,

你好,我正在尝试做一个学校系统的小模拟

我想知道我是否有两门课: 1:校长 2:老师 那么,班主任的方法是否有可能创造新的班主任对象呢

以下是我想做的(方法AddTeacher):

另外,我想问一下是否有可能做到以下几点:我想做一个约束,它只允许类主体的一个对象存在。如果可能的话,你能告诉我怎么做吗

先谢谢你

p.S.addTeacher看起来是这样的:

void addTeacher(char* nameofobject,char* name,char* position,int wage, unsigned long long id){
TEACHER nameofobject(char* name,char* position,int wage, unsigned long long id);
}

校长打算在什么地方增加一名教师,从什么地方撤换一名教师?你需要一批老师。您缺少了一个关键概念,即
学校
。一所学校有一名校长,大概只有一名,所以校长成员可以像
校长一样简单


一所学校也有一批教师。这是对C++模板库容器类模板之一的尖叫。这为您提供了principal对象可以轻松向其添加教师或从中删除教师的功能。

如果您只需要principal的一个实例,请将其设置为单实例类,但这是值得怀疑的。另外,在教师课堂上引入一个静态的Principal对象。另一方面,通过使用
std::string
而不是
char*
,让自己的生活更轻松。我不明白你要从中删除教师。从某种容器中删除?well removeTeacher方法应该删除班主任的对象-这是另一个如何做的问题?所以你说我应该制作一个单独链接的班主任列表?但是为什么我不能简单地删除对象呢???
void addTeacher(char* nameofobject,char* name,char* position,int wage, unsigned long long id){
TEACHER nameofobject(char* name,char* position,int wage, unsigned long long id);
}