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

Взаимное приведение типов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Конструктор-копирования связного списка http://www.cyberforum.ru/cpp-beginners/thread945165.html
Подскажите,как реализовать конструктор копирования для этого списка class part { public: //Êîíñòðóêòîð,äåñòðóòîð,êîíñòðóêòîð êîïèðîâàíèÿ. part() { item=0; next=NULL; }
C++ В чем ошибка? Никак не могу найти ошибку. Задание: разработать класс последовательность целых чисел, перегрузить дважды для оператор минус, 1ая перегрузка принимает целое число (в результирующем классе удаляются все элементы равные целому числу), 2ая-перегрузка минуса для экземпляра класса mas (удаляются все элементы 2ого экземпляра) #include <iostream> #include<stdio.h> #include <string> http://www.cyberforum.ru/cpp-beginners/thread945160.html
C++ Реализовать код
Само задание: разработать класс последовательность целых чисел, перегрузить для него оператор минус, перегрузка принимает целое число (в результирующем классе удаляются все элементы равные целому числу) как мне это реализовать? #include <iostream> #include<stdio.h> #include <string> using namespace std;
C++ Паттерны метапрограммирования шаблонов
Нигде не могу найти литературу по паттернам метапрограммирования шаблонов, александреску не предлагать)) конкретно не могу понять как решить такую ситуацию class MTop{}; template <class Child> class MainObject { public: Child * Add(char const* param); void SetParam(char const * param) {/*some code*/}
C++ Закрыть методы класса, от которого идет наследование http://www.cyberforum.ru/cpp-beginners/thread945134.html
Здравствуйте. Подскажите пожалуйста, как можно сделать так, чтобы некоторые методы класса, от которого идет наследование другого классы, были запрещены для использования. Приведу пример: Если класс односвязанного списка: class Element{ public: value_t value; Element * next;
C++ Аргументы командной сроки Здравствуйте,я начал изучать аргументы командной строки, и решил попробовать написать не большую программу. #include <iostream> using namespace std; int main(int num,char* command) { if(command == "start") подробнее

Показать сообщение отдельно
rrrFer
Заблокирован
28.08.2013, 23:19     Взаимное приведение типов
Здравствуйте.
Есть 2 класса: A, B. Для класса А нужно перегрузить оператор B(), а для класса B - оператор A().

Естественно forward declaration не помог (тип получается не полным):

говнокод:
Код
struct B;
struct A {
  int a_;
  A(int a) : a_(a) { }
  operator B() {
    return a_;
  }
};

struct B {
  int b_;
  B(int b) : b_(b*2) { }
  operator A() {
    return b_;
  }
};

int main() {
}
Скорее всего я дико туплю, но я залез в книжку Страуструпа - там код примерно такой же (он тоже пишет forward declaration в надежде что это взлетит, но код неработает - раздел "24.3.5 Отношения использования").
Больше примеров для плюсов не нашел. Прошу помощи. Заранее спасибо ).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru