• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Шаблоны

  • Автор темы Автор темы Sermak
  • Дата начала Дата начала
S

Sermak

У меня такой вопрос, можно ли создать объект шаблонного класса, который бы обозначал "NULL", если неизвестны параметры шаблона (типы данных шаблона). Если нельзя, то какие есть варианты. Например метод шаблона возвращает ссылку на объект шаблона, как можно определить, деиствительна ли ссылка, или метод допустил ошибку, и ссылка не верна (не найден объект и тп). Можно конечно создать флаг ошибки, но хотелось бы что нить поэллегантнее.
 
Шаблоны - они на этапе компиляции генерятся, поэтому спрашивать у класса, если у него параметр - нет смысла. Определить объект шаблонного класса без указания базы - нельзя, насколько мне известно.
Так что главный вопрос, как всегда - А на фига? Какую задачу пытаемся решить?
 
Код:
template <class T>
class TC
{
public:
T& RetObj (bool x, T &obj)
{
if (x) return 0; // здесь естественно неправильно тк ссылка не может быть 0, а очень надо
else return obj;
}
};
Не смотрите на бессмысленность кода - это для примера.
Как мне дать понять пользовательской программе (которая будет использовать этот шаблон), что возвращщенный объект (ссылка) не является искомым. Кроме создания флага.
 
а вернуть указатель нельзя? только ссылку?
 
с указателями можно конечно, но коряво получается при использовании перегруженных для class T операторов, вообщем некрасивый текст программы получается, хотелось бы всетаки со ссылками. Ну если конечно нельзя, то придется с указателями (у меня кстати так и реализовано уже), просто хотелость шоб красиво!!!
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы