Форум программистов, компьютерный форум CyberForum.ru

неявное преобразование в C++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Алгебру в дерево http://www.cyberforum.ru/cpp/thread335158.html
Надо сделать программу, которая переводит алгебраическое выражение в виде строки в дерево. Подскажите пожалуйста, как это сделать? Может есть какие-нибудь готовые функции которые работают с "алгеброй"?
C++ Критика архитектуры набора планов Требуется создать систему похожую на Hierarchical task network то есть некоторая библиотека планов и каждый план может содержать подпланы, получать результаты выполнения подпланов и передавать их в другие подпланы используется в системе управления ботами в командной реалтайм игре. пока мои прикидки таковы: * отдельный план является функцией класса библиотеки планов; * план получает... http://www.cyberforum.ru/cpp/thread335057.html
Решение игры "вирус"? C++
В инете есть много флеш игр на тему вирусов. Поле поделено на квадраты из нескольких цветов и нужно всё заразить на наименьшее число ходов. Хочу потренироваться находить решения таких задач. Для примера возьмём "Перекрась поле!". Поле 14*14 клеток, 6 разных цветов, главная клетка - верхняя левая, дают 30 ходов. Поле в программу вбивать пока придётся в ручную. С чего начать создание решалки?...
Чекер удаленных серверов на ОС C++
Доброго времени суток. Я этот форум читаю уже достаточно давно, но все никак не приходилось здесь зарегистрироваться. Сейчас обращаюсь к вам с просьбой. Помогите написать программку, которая будет брать ип со списка проверять этот сервер на версию ОС (2003 или 2008, других не надо) и записывать результат в текстовый фалй. Слышал, что при подключении к серверу передается некая инфа, в которой...
C++ Управляющая последовательность \f http://www.cyberforum.ru/cpp/thread331800.html
Уважаемые форумчане! Я давно изучаю язык С++, но пользуюсь только несколькими управ. последовательнотсями(в основном \n):-[. Недавно я хахотел узнать о др. последовательностях. В книге Шилдта "Полный справочник по С++" встретил последовательность \f. В книге написано, что это прогон бумаги. У меня вопрос: а что обозначает "прогон бумаги" в консольном окне??? P.S. Благодарю за внимание!
C++ Записать в файл g целые числа b 1 , ..., b n , где при i = 1, 2, ..., n значение b i равно: i. Дано натуральное n. Записать в файл g целые числа b 1 , ..., b n , где при i = 1, 2, ..., n значение b i равно: i. подробнее

Показать сообщение отдельно
TheAthlete
 Аватар для TheAthlete
151 / 151 / 12
Регистрация: 31.08.2010
Сообщений: 529
22.07.2011, 13:38  [ТС]     неявное преобразование в C++
Всем спасибо за комментарии. Разобрался.
Тоже написал простой пример, который описывает данную ситуацию:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
 
class test {
  public:
    explicit test(const std::string &book = "") : tbook(book) {}
    bool same_isbn(const test &rhs) const { return isbn == rhs.isbn; }
  private:
    std::string tbook;
    std::string isbn;
};
 
int main() {
  std::string null_book = "9-999-99999-9";
  test item;
  item.same_isbn(test(null_book));
  return 0;
}
В данном примере, функция same_isbn ожидает в качестве аргумента объект класса test. Если не указать ключевое слово explicit, то можно будет использовать следующую конструкцию:

C++
1
item.same_isbn(null_book);
В данном случае, чтобы создать новый объект класса test из строки null_book, компилятор использует конструктор класса test, который получает объект класса string. Этот вновь созданный (временный) объект класса test и передается функции same_isbn().

Если указать ключевое слово explicit. То данная конструкция вызовет ошибку компиляции. Для этого необходимо явно указать объект класса test:

C++
1
item.same_isbn(test(null_book));
Объявление конструктора явным запрещает только неявное его применение. Для явного создания временного объекта применим любой конструктор
 
Текущее время: 08:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru