Как мне не повторить себя с этим избыточным префиксом имени метода?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Как мне не повторить себя с этим избыточным префиксом имени метода?

Сообщение Anonymous »

Я пишу библиотеку с объектом очереди (не std :: queue и не используется в качестве контейнера C ++). В этой очереди мы можем включить команды с аргументами. Допустим, командами являются foo , bar и baz , и что каждый из Bar и Baz принимает параметр int .
Теперь эти команды и не функции моей библиотеки, то есть вы не можете выпустить команду C ++ (123); есть методы: < /p>

Код: Выделить всё

class queue_t {
// ...
public:
void enqueue_foo();
void enqueue_bar(int x);
void enqueue_baz(int y);
};
< /code>
И мне не нравится избыточный префикс. Дело в том, что по причинам, имена методов queue_t :: foo () 
, queue_t :: bar () и queue_t :: baz () не будет целесообразно, и не будет запутать пользователя, чтобы поверить, что эти действия применяются к очереди, а не планируются на определение выполнения. Кроме того, foo , bar и baz не должны находиться в глобальном пространстве имен или в одном и том же пространстве имен, что и queue_t , как это приведет к другим видам путаницы. /> Обратите внимание, что если бы я создал «гаджеты» с именем foo , bar и baz , я мог бы принять общий метод enqueue () , который принимает гаджет в качестве первого аргумента Один, и это не то, что я хочу.
Примечание: решение C ++ 11 предпочтительнее, но ответы, требующие более новых языковых версий, приемлемы.

Подробнее здесь: https://stackoverflow.com/questions/796 ... ame-prefix
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»