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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
endemic
1 / 1 / 0
Регистрация: 12.12.2011
Сообщений: 9
#1

Перекрестные указатели - C++

26.11.2012, 18:45. Просмотров 469. Ответов 3
Метки нет (Все метки)

Здравствуйте. Как можно реализовать два класса, в каждом из которых есть указатель на объект другого класса?

C++
1
2
3
4
5
6
7
8
9
//a.h
#pragma once
 
#include "b.h"
 
class A {
public:
    B* var;
};
C++
1
2
3
4
5
6
7
8
//b.h
#pragma once
 
#include "a.h"
 
class B {
    A* var;
};
C++
1
2
3
4
5
6
7
8
//main
#include "a.h"
#include "b.h"
 
void main() {
    A a;
    B b;
}
При попытке компиляции MSVS 2012 Express выдает следующее:

Ошибка 1 error C2143: синтаксическая ошибка: отсутствие ";" перед "*" d:\docs\visual studio 2012\projects\consoleapplication1\consoleapplication1\b.h 6 1 ConsoleApplication1
Ошибка 2 error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию d:\docs\visual studio 2012\projects\consoleapplication1\consoleapplication1\b.h 6 1 ConsoleApplication1
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2012, 18:45     Перекрестные указатели
Посмотрите здесь:

Перекрестные заголовочные файлы. Как быть? - C++
Есть два класса. Первый знает о втором классе, а второй о первом. Потому ссылки на заголовочные файлы получаются перекрестными. Из-за этого...

Указатели.Строки и указатели - C++
Вот условия ввода строки:Вводить и обрабатывать строки в цикле до тех пор пока первый символ не пробел Условия обработки строки: ...

Указатели - C++
Используя вместо самой переменной указатель на нее написать программу в соответствии с заданием (выполнение задания оформить...

Указатели - C++
Наткнулся на вот такой цикл for (char p=str; *p!=(char)0; ++p) ,поясните пожалуйста что значит *p!=(char)0

Указатели - C++
Помогите плиз! Введите с клавиатуры данные в массив целого типа, а затем перепишите их значения в другой массив удвоенной размерности...

указатели - C++
Вот собственно код, проблема в том что я непойму как он работает, что именно непонятно указал в комментариях unsigned char **...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13054 / 7317 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
26.11.2012, 19:20     Перекрестные указатели #2
a.h
C++
1
2
3
4
5
6
7
8
9
#pragma once
 class A;
 class B;
#include "b.h"
 
class A {
public:
    B* var;
};
no_wearines
52 / 48 / 2
Регистрация: 01.01.2012
Сообщений: 324
26.11.2012, 19:21     Перекрестные указатели #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class B; //объявление - не определение
 
class A {
public:
    B* var;
};
 
class B {
    A *var;
};
 
void main() {
    A a;
    B b;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2012, 19:53     Перекрестные указатели
Еще ссылки по теме:

Указатели - C++
помогите выбрать какой вариант 2. Объявлен массив строк. Как вывести на экран третью строку? char lines; char *pl = &lines; ...

Указатели - C++
Нифига не догоняю тему про указатели, есть книга по C/C++ но там не очень понятным языком написано Киньте плиз ссылку на хороший мануал...

указатели - C++
1) создать функцию(проблем нет) 2) в функции ввести и определить локальную переменную типа int и задать ей значение 1(проблем нет) 3) в...

Указатели - C++
ВОт вообщем это надо сделать:( как вывести именно знаки не знаю пока и как ограничить вводимою строку в 100 символов!?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
endemic
1 / 1 / 0
Регистрация: 12.12.2011
Сообщений: 9
26.11.2012, 19:53  [ТС]     Перекрестные указатели #4
Большое спасибо!
Yandex
Объявления
26.11.2012, 19:53     Перекрестные указатели
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru