Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Расскажите, как здесь работает указатель на указатель? https://www.cyberforum.ru/ cpp-beginners/ thread1297657.html
#include "stdafx.h" #include <iostream> #include <locale.h> using namespace std; void main() { setlocale(LC_ALL, "rus"); int i, j, n, m, **A, **B; cout << "Введите размер массива А \n"; cin >> n;
Написать программу: определить тип трапеции C++
Известны углы α и β у основания трапеции. Выяснить, если это возможно, тип трапеции (прямоугольная, равнобедренная, прямоугольник).
C++ Функции в зависимости от параметра хз как точнее описать в общем можно ли сделать чтобы в классе появлялись (становились доступными в public) те или иные функции в зависимости от переданного параметра? я хочу написать класс для работы с файлом (открытие, запись и т.п.) и вот есть допустим функция открытия файла, в зависимости от значения переменной mode (r, w, rb, wb) должны появляться соответственно функции scan, print, read,... https://www.cyberforum.ru/ cpp-beginners/ thread1297654.html C++ Почему в этой программе (n+2) и [m+2] а не просто n и m? https://www.cyberforum.ru/ cpp-beginners/ thread1297653.html
#include "stdafx.h" #include <iostream> #include <locale.h> using namespace std; void main() { setlocale(LC_ALL, "rus"); int i, j, n, m, **A, **B; cout << "Введите размер массива А \n"; cin >> n;
Написать программу: определить тип треугольника C++
Задан треугольник с углами a, b и g. Определить тип треугольника — остроугольный, прямоугольный или тупоугольный.
C++ Протабулировать функцию в заданном диапазоне https://www.cyberforum.ru/ cpp-beginners/ thread1297649.html
3. Протабулировать функцию в заданном диапазоне. #include "stdafx.h" #include <iostream> #include <cmath> #include <clocale> #include <cstdlib> using namespace std; using std::cin; using std::cout; using std::endl;
C++ Написать программу вычисления значений выражений 2. Написать программу вычисления значений выражений. Все необходимые для вычисления данные вводятся с клавиатуры. Объяснить полученные результаты. Сверить полученные результаты с ручным подсчетом. s=-r++t, t>>2 (код+алг) Добавлено через 2 часа 13 минут пожалуйста помогите , завтра утром уже к сдаче готовить https://www.cyberforum.ru/ cpp-beginners/ thread1297648.html Написать программу определяющую расположение точки А(х, у) относительно заштрихованной области C++
1.Написать программу с использованием условных операторов, определяющие расположение точки А(х,у) относительно заштрихованной области.+ алг Вставляйте изображения на форум! Добавлено через 12 минут http://s019.***********/i633/1411/97/f49df6905b39.png дополнение Добавлено через 1 минуту http://s019.***********/i633/1411/97/f49df6905b39.png Добавлено через 6 минут
C++ Оптимизация SDL https://www.cyberforum.ru/ cpp-beginners/ thread1297639.html
Начал изучать SDL. Все бы хорошо, но процесс созданного окна кушает 25% ресурсов процессора. Когда делал по этим урокам: https://www.youtube.com/watch?v=QywG64dqp_M&index=5&list=PL949B30C9A609DEE8 все было хорошо. Но потом решил засунуть все в класс. После этого оптимизация на 0. Вот файлы проекта, подскажите, что здесь не так: Core.h #ifndef APP_H #define APP_H #include <SDL.h> enum...
C++ Работа с сетью: вывод ip адреса Добрый день,помогите пожалуйста с заданием... "Разработать приложение, которое по заданному классу (А, В или С), количеству подсетей N и максимальному количеству компьютеров M в подсети определяет маску для разбиения на подсети и список возможных IP-адресов подсетей. Если разбиение на подсети невозможно, приложение должно выдавать соответствующее сообщение об ошибке." Есть программа:... https://www.cyberforum.ru/ cpp-beginners/ thread1297636.html
C++ Найти локальные максимумы массива, определить их местоположение
В массиве А (45) найти локальные максимумы, определить их местоположение (локальным максимумом назовем элемент массива, значение которого больше, чем значения двух соседних слева и справа с ним элементов).
C++ Стандартная библиотека шаблонов. Последовательные контейнеры https://www.cyberforum.ru/ cpp-beginners/ thread1297619.html
Помогите,пожалуйста. Необходимо написать программу реализующую: алгоритмы последовательного поиска, сортировки исходного контейнера и использовать алгоритмы двоичного по-иска. Информационная запись о файле содержит поля: каталог, имя файла, расширение, дата и время создания, атрибуты «только чтение», «скрытый», «системный», признак удаления, количество выделенных секторов (размер сектора принять...
Вездепух
Эксперт CЭксперт С++
11087 / 6054 / 1652
Регистрация: 18.10.2014
Сообщений: 15,196
12.11.2014, 07:46 0

Создать объект внутри класса, который может вызывать функцию этого класса - C++ - Ответ 6839001

12.11.2014, 07:46. Показов 8419. Ответов 6
Метки (Все метки)

Лучший ответ Сообщение было отмечено Sergey271 как решение

Решение

Цитата Сообщение от Sergey271 Посмотреть сообщение
Кто подскажет в чем проблема?
Заголовочные файлы 'Buttons.h' и 'Lift.h' включают друг друга циклически. Сразу понятно, что получатся "непонятные" ошибки. Циклическое включение заголовочных файлов никогда не имеет смысла.

Именно это произошло в вашем случае. Циклическое включение "разрешилось" так, что 'Buttons.h' включился выше, а 'Lift.h' - ниже. В результате тип 'Lift' оказался неизвестным на территории 'Buttons.h' и компилятор ругается на него.

В данном случае надо убрать из 'Buttons.h' включение 'Lift.h', а вместо этого просто поместить в 'Buttons.h' предварительное объявление класса 'Lift'

C++
1
2
3
4
5
6
7
#ifndef BUTTONS_H
#define BUTTONS_H
 
class Lift;
 
class Buttons{
  ...
А вот уже в 'Buttons.cpp' можно смело включать 'Lift.h', чтобы внутри 'Buttons.cpp' сделать 'Lift' завершенным типом.

Остальные заголовочные файлы надо тоже проверить на предмет циклического включения. Возьмите за правило: заголовочные файлы в программе должны образовывать однозначную иерархию уровней. Заголовочные файлы более высокого уровня имеют право включать только заголовочные файлы более низкого уровня, но не наоборот.

В данном случае класс 'Lift' напрямую содержит внутри себя подобъекты типа 'Buttons'. Это означает, что 'Buttons.h' имеет более низкий уровень, а 'Lift.h' - более высокий уровень. Следовательно запрещается включать 'Lift.h' в 'Buttons.h'. Включайте 'Buttons.h' в 'Lift.h', а в самом 'Buttons.h' обходитесь такими предварительными декларациями классов, как я показал выше.

Добавлено через 4 минуты
Цитата Сообщение от Cookie Monster Посмотреть сообщение
Если в классе есть конструктор отличный от конструктора по умолчанию то надо этот самый конструктор по умолчанию определить.
Что значит "надо определить"? Его "надо определить", если он нужен согласно замыслу автора кода. Но в данном случае он не нужен. Нигде в программе не используется конструктор по умолчанию класса 'Buttons'.

Вернуться к обсуждению:
Создать объект внутри класса, который может вызывать функцию этого класса C++
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2014, 07:46
Готовые ответы и решения:

Создание статической функции класса, которая принимает экземпляр этого же класса как объект
Привет. Есть такой код class Model { public: Model(); Model(int verticesSize, int facesSize);...

Индексация массива класса, через объект этого класса
class A{ char c;//? - размер массива public: A(int C){c;} }; int main(){ A a(5);//вносим...

Статический указатель класса на объект этого же класса
Не пойму: что в этом коде не так? #include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std;...

В конструктор класса передать объект этого класса
Вопрос на засыпку :) Как в конструктор класса передать объект этого класса? Т.е. class A {...

6
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2014, 07:46
Помогаю со студенческими работами здесь

Может ли метод класса возвращать экземпляр этого же класса?
такой вопрос, реально что бы функция класса имела тип класса(возвращала класс), то есть типа так:...

Правда, что указатель класса-наследника не может указывать на объект класса-родителя?
Доброго времени суток! Пример кода ниже. Правда ли , что указатель класса-наследника не может...

Можно ли создать объект класса с таким же именем как у самого класса?
Можно ли создать объект класса с таким же именем как у самого класса? Ну или как то обойти эту...

В конструкторе вложенного класса инициализируется приватное поле. Потом вызывается функция-метод этого класса и выводит значение этого поля НО НЕ ТО!
Друзья! Почему так? #include &lt;windows.h&gt; #include &lt;iostream&gt; using namespace std; //Вот...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru