angular dart有重载方法的概念吗?
Does angular dart have a concept of overloaded methods?
我想要 3 个不同的函数,都称为“AddField”,其中每个函数都有不同的参数。根据参数,语言将知道调用哪个函数。 Delphi 如果将函数标记为“重载”,则有此概念。
void addField(int tableID, fieldID) {
addfield(tableID, fieldID, 0, 0)
}
void addField(int tableID, fieldID, groupID) {
addfield(tableID, fieldID, groupID, 0)
}
void addField(int tableID, fieldID, groupID, size) {
item = FieldItem();
item.tableID = tableID;
item.fieldID = fieldID;
item.groupID = groupID;
item.size = size;
fieldlist.add(item);
}
它们可以这样使用...
void addClientFields(){
addfield(tblIDClient, fldIDName, grpContact, 30);
addfield(tblIDClient, fldIDActive);
addfield(tblIDClient, fldIDDate, grpSettings);
}
Dart 没有 Method overloading
。您可以创建具有不同名称的方法或使用具有默认值的可选参数。
void addField(int tableID, fieldID, [int groupID = 0, int size = 0]) {
item = FieldItem();
item.tableID = tableID;
item.fieldID = fieldID;
item.groupID = groupID;
item.size = size;
fieldlist.add(item);
}
我想要 3 个不同的函数,都称为“AddField”,其中每个函数都有不同的参数。根据参数,语言将知道调用哪个函数。 Delphi 如果将函数标记为“重载”,则有此概念。
void addField(int tableID, fieldID) {
addfield(tableID, fieldID, 0, 0)
}
void addField(int tableID, fieldID, groupID) {
addfield(tableID, fieldID, groupID, 0)
}
void addField(int tableID, fieldID, groupID, size) {
item = FieldItem();
item.tableID = tableID;
item.fieldID = fieldID;
item.groupID = groupID;
item.size = size;
fieldlist.add(item);
}
它们可以这样使用...
void addClientFields(){
addfield(tblIDClient, fldIDName, grpContact, 30);
addfield(tblIDClient, fldIDActive);
addfield(tblIDClient, fldIDDate, grpSettings);
}
Dart 没有 Method overloading
。您可以创建具有不同名称的方法或使用具有默认值的可选参数。
void addField(int tableID, fieldID, [int groupID = 0, int size = 0]) {
item = FieldItem();
item.tableID = tableID;
item.fieldID = fieldID;
item.groupID = groupID;
item.size = size;
fieldlist.add(item);
}