![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| FrAcTaL_life |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 9.11.2003 Репутация: нет Всего: нет |
Что такое void?
А именно:
И еще *)..., в чем разница между struct и class? Вродебы одинаковые вызовы из вне, обращения, передачи аргументов в функции... Это сообщение отредактировал(а) FrAcTaL_life - 22.11.2003, 13:52 |
|||
|
||||
| Hroft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 20.10.2003 Где: Москва Репутация: нет Всего: 3 |
void - "никакой" тип. void* - указатель на любой тип.
перед именем функции void означает, что ф-я не фозвращает значения, и в ней не может быть return'а. получается паскалевская процедура. если не ошибаюсь, то в новых стандартах не рекомендуется писать void в качестве списка параметров. нужно просто оставлять скобки пустыми. это от С осталось. а class и struct различаются: по умолчанию все члены у структуры public, а у класса private. не помню точно, но и наследуются они с модификаторами public у структуры и private у класса. т.е.: struct s1 { private: int x; }; и class s2 { int x; }; эквивалентны, как и class s_1 { public: int x; }; и struct s_2 { int x; }; Это сообщение отредактировал(а) Hroft - 22.11.2003, 15:24 |
|||
|
||||
| FrAcTaL_life |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 9.11.2003 Репутация: нет Всего: нет |
1. вот ты (Hroft) написал void*...
А что собственно дает эта звездочка? Есть еще char* 2. в примерах книги (по которой я изучаю с++) перед функцией мелькает int. на что он указывает? на аргументы(типа все аргументы int)? |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
FrAcTaL_life, тут же не школа. Бери книгу и вперёд! Список литературы есть на форуме.
|
|||
|
||||
| FrAcTaL_life |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 9.11.2003 Репутация: нет Всего: нет |
NiJazz
В моих книгах это ненаписано, поэтому и спрашиваю! |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
FrAcTaL_life, значит у тебя книги не по С++...
|
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
FrAcTaL_life, ибо это базовые понятия и они ОБЯЗАНЫ быть в книгах по С++.
|
|||
|
||||
| FrAcTaL_life |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 9.11.2003 Репутация: нет Всего: нет |
NiJazz
Извини но ты бы лучше вместо того чтобы попрекать, ответил на вопрос! А на счет книг...., да не знаю...., написано С++ и мне кабы достачно этого |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
Звёздочка означает, что эта переменная не является элементом данного типа, а только указателем на значение его. То есть её значение - адрес, по которому расположено значение в памяти. Таким образом можно, зная адрес, можно использовать значение.
void - пустота. Можно понимать это так. Всё же лучше почитай книгу внимательно... Удачи! ;) |
|||
|
||||
| <Spawn> |
|
||||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: нет Всего: 64 |
Если говорить с точки зрения паскаля, то void* это нетипизированный указатель, т.е. указатель, указывающий на данный любого типа(в Паскале он называется Pointer). Т.е. адрес на который ссылается этот указатель может содержать различные данные - переменную, структуру, адресс функции и т.д. Попросту говоря это есть переменная размером 4 байта(по крайней мере в 32-разрядных ОС), содержащая в себе значение, являющееся адресом переменной, на которую ссылается указатель. Примеры:
Так же ты можешь увидеть, что некоторые АПИ функции используют нетепизированный указатель для передачи в них адреса функции. Сори если где ошибся, поскольку Си я учу пару недель и все может быть. Это сообщение отредактировал(а) <Spawn> - 23.11.2003, 15:33 -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
||||
|
|||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: нет Всего: 64 |
Ои, когда читал, то показалось, что был вопрос про void*. Ну ни чего страшного.
-------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |