Это может быть немного поздно, но может быть полезно для других.
Это возможно, но с некоторой модификацией.
ConfigurationElementCollection наследует ConfigurationElement, так как «this [string]» доступна в ConfigurationElement.
Обычно, когда ConfigurationElementCollection наследуется и реализуется в другом классе, «this [string]» скрывается с «new this [string]».
Один из способов обойти это - создать другую реализацию этого [], такую как «this [string, string]»
пример ниже.
public class CustomCollection : ConfigurationElementCollection
{
protected override ConfigurationElement CreateNewElement()
{
return new CustomElement();
}
protected override object GetElementKey(ConfigurationElement element)
{
return ((CustomElement)element).Name;
}
public CustomElement this[int index]
{
get { return (CustomElement)base.BaseGet(index); }
set
{
if (BaseGet(index) != null)
BaseRemoveAt(index);
BaseAdd(index, value);
}
}
// ConfigurationElement this[string] now becomes hidden in child class
public new CustomElement this[string name]
{
get { return (CustomElement)BaseGet(name); }
}
// ConfigurationElement this[string] is now exposed
// however, a value must be entered in second argument for property to be access
// otherwise "this[string]" will be called and a CustomElement returned instead
public object this[string name, string str = null]
{
get { return base[name]; }
set { base[name] = value; }
}
}
Кейл - это то, что я использовал с этим микроконтроллером в прошлом. У них есть неплохой набор инструментов. SDCC тоже хороший и бесплатный
Одна из компаний, в которой я работал, использует Keil . Все инженеры очень довольны качеством ассемблерного кода, созданного компилятором.
Кроме того, Tasking имеет несколько довольно приличных инструментов, но мы использовали их больше для семейства 8051XA.
SDCC - это то, о чем я обычно слышу. Я этим не пользовался. http://sdcc.sourceforge.net/
Keil предоставляется atmel и является одним из широко используемых компиляторов ... будучи студентом максимума микроконтроллеров, мы используем Keil ...
Кейл очень хорош, но он ограничивает количество места для кода, которое вы можете использовать с бесплатной версией. Я думаю, что полная лицензия стоит более тысячи баксов, что может быть оправдано для одной мужской операции. По этой причине я только начал пользоваться SDCC (мне нравятся свободные вещи!), и результат не так хорош, но пока что он работает хорошо.