Что является более обычным именем функции между «ContainsElement» и & quot; DidContainElement & quot ;?

Я пишу функцию, чтобы определить, существует ли элемент в контейнере. Я не знаю, как выбрать имя функции между:

bool ContainerType::ContainsElement(const ElementType& elem);

а также

bool ContainerType::DoesContainElement(const ElementType& elem);

Рассмотрим следующие два сценария:

Версия 1:

ContainerType coll;
ElementType   elem;
...

if (coll.ContainsElement(elem))
{
cout << elem << " exists." << endl;
}

Версия 2:

ContainerType coll;
ElementType   elem;
...

if (coll.DoesContainElement(elem))
{
cout << elem << " exists." << endl;
}

Насколько я понимаю, я думаю, что версия 1 больше похожа на естественный английский. Тем не менее, я также обнаружил, что стиль версии 2 используется более широко.

Каково твое мнение?

Обновить:

FltIsOperationSynchronous
FltIsIoCanceled
FltIsVolumeWritable

Три названные выше функции взяты из документации Microsft. Если префикс «Flt» удален, это:

IsOperationSynchronous
IsIoCanceled
IsVolumeWritable

скорее, чем

OperationIsSynchronous
IoIsCanceled
VolumeIsWritable

Зачем?

0

Решение

contains самый популярный containsElement может быть, и я никогда не видел doesContainElement, Наверное, слишком долго.

Если вы пытаетесь подражать английскому, подумайте, что bool функции обычно используются с if, Что звучит лучше:

    if( a.containsElement(b) )

if( a.doesContainElement(b) )

if( a.contains(b) )

? Я думаю 3, потом 1, потом 2, не так ли?

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]