Я собираю этот код C ++ с Visual Studio 2012. Я заметил, что мог бы использовать значения перечисления без оператора разрешения области (::). < /p>
Вот Важные части моего кода за пределами int main (): < /p>
enum SortMethod
{
BY_NAME,
BY_WEIGHT
};
< /code>
Затем внутри int main () я использую следующее: < /p>
int main()
{
LinkedList* list = new LinkedList();
/*
Insert values into linked list, in sorted order.
*/
list->print( BY_NAME );
cout
Почему работают эти функции? Функция print () принимает один аргумент SortMethod. Поэтому я подумал, что мне нужно сделать следующее: < /p>
SortMethod sortByName = BY_NAME;
list->print( sortByName );
< /code>
Но оказывается, что я могу просто использовать 'by_name' в списке параметров. Это специфичный для компилятора?
Подробнее здесь: https://stackoverflow.com/questions/224 ... resolution