15.12.2017, 18:49 [+3 UTC]
в нашей команде: 2 382 чел. | участники онлайн: 9 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: консультации

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
15.12.2017, 18:17

Последний вопрос:
15.12.2017, 18:49

Последний ответ:
15.12.2017, 06:51

Последняя рассылка:
15.12.2017, 15:45

Писем в очереди:
97

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
28.08.2011, 14:44 »
Алексеев Владимир Николаевич
Спасибо за конкретную помощь! Пошло движение вперёд! [вопрос № 183914, ответ № 268098]
07.12.2010, 08:59 »
Hooper
Большое спасибо, как раз то, что нужно [вопрос № 181111, ответ № 264561]

РАЗДЕЛ • С / С++

Создание программ на языках C и C++.

[администратор рассылки: Андрей Кузнецов aka Dr_Andrew (Старший модератор)]

Лучшие эксперты в этом разделе

Коцюрбенко Алексей aka Жерар
Статус: Мастер-Эксперт
Рейтинг: 565
Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 294
CradleA
Статус: Профессионал
Рейтинг: 196

Перейти к консультации №:
 

Консультация онлайн # 64575
Раздел: • С / С++
Автор вопроса: Gang
Отправлена: 28.11.2006, 12:26
Поступило ответов: 2

Здравствуйте!
Помогите разобраться (пример из книжки)-
struct TNode {
int value;
TNode* pnext; //тут не ясно
TNode(int val): pnext(0), value(val){} // и тут
};
pnext - это просто указатель на структуру? и можно ли его объявить вне структуры?
последняя строка не ясна совсем...
(Разве на СИ так можно объявлять?)
Заранее спасибо )

Состояние: Консультация закрыта

Здравствуйте, Gang!
Это классический пример построения списка.
Указатель на структуру (как вообще на любой тип) конечно можно объявить вовне. Не уверен можно ли объявлять указатель на структуру ВНУТРИ нее в стандарте С, но в С++ - это один из ключевых моментов нового стандарта.
Последняя же строка - это inline (встроеный) конструктор - специальный метод-функция класса - который отвечает за дополнительные действия при создании каждого экземпляра этого класса, и вот этого точно нет в стандарте С.
: pnext(0), value(val) - это инициализация членов класса значениями, которые могут быть либо константами, либо передаваться в качестве параметров конструктора.

Итак, вывод RTFM в данном случае по стандарту языка


Консультировал: Tek
Дата отправки: 28.11.2006, 12:34

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 128921 от Sergey A. Wedensky

Здравствуйте, Gang!

Это объявление структуры - узла связного списка.
int value - значение, хранимое узлом.
TNode* pnext - указатель на следующий элемент списка. Его смысл - каждый элемент хранит в себе указатель на следующий, таким образом список можно проходить только последовательно, зная первый элемент (или указатель на него).
TNode(int val): pnext(0), value(val){} - конструктор структуры, инициализируйщий член value значением своего единственного параметра val, и pnext нулем.


Консультировал: Sergey A. Wedensky
Дата отправки: 28.11.2006, 12:37

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 64575

Посетитель

ID: 24716

# 1

= общий = | 28.11.2006, 13:00 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

а подскажите , как ето реализовать на стандартном СИ, в плане конструктор. Я так понял, что указатель на структуру можно объявить в main() ?

 

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14824 сек.

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.41 от 25.02.2017
Бесплатные консультации онлайн