BIGLIB
  большущая библиотека (9812 книг), можно не только прочитать но и скачать бесплатно
 
АСТРОЛОГИЯ
  книги по астрологии
 
КРИМИНАЛ
  книги про криминал
 
ДЕТЕКТИВЫ
  детективы известных
   писателей
 
ФАНТАСТИКА
  фентези, фантастика,   фантастические повести
 
ПРИКЛЮЧЕНИЯ
  книги про приключения,   путешествия
 
ПОЛИТИКА
  книги про политиков,   репрессии
 
ПСИХОЛОГИЯ
  разнообразная литература   по психологии
 
КЛАССИКА
  классическая литература
 
КОМПЬЮТЕРНАЯ
  ЛИТЕРАТУРА
  про компютерное железо,   документация, языки   программирования
 
РЕЛИГИЯ, АТЕИЗМ
  книги про религию
 
ФИЛОСОФИЯ
  книги, которые заставляют   задуматься над   окружающим тебя миром.
 
ЭНЦИКЛОПЕДИИ
  самые интересные   энциклопедии на
   разные темы
 
МЕДИЦИНА
  медицинские книги,   методички,
   народные лечебники
 
КУЛИНАРИЯ
  рецепты тортов,   консервирование,
  все о спиртных
  напитках.
 
СТИХИ
  стихи популярных и не   очень авторов
 
ТВОРЧЕСТВО
  народное творчество,   стихи, песни и т.д.
 
ЮМОР
  анекдоты, приколы,   смешные истории
 
ЛЮБОВНЫЙ РОМАН
  мир высоких чувств и   любовных грез
 
ЭРОТИКА
  эротические рассказы,   книги о технике секса,   кама-сутра и др.




adfun.ru
Rambler's Top100 Rambler's Top100
    НА ГЛАВНУЮ
    РЕФЕРАТЫ
    ТОСТЫ
    ТЕСТЫ
    АВТО
    ДЛЯ СТУДЕНТА
    КНИГИ
    КОНТАКТ
 
Turbo C++ Version 1.0 Programmer's Guide
Автор ""
Размер 211728 Байт
Страница 10 из 30
СКАЧАТЬ КНИГУ ЦЕЛИКОМ

ленные),  а  также  определяемые  пользователем типы данных,
включая целочисленныетипы разных размеров,  со знаком и  без
него,  числа с плавающей точкой различной точности представ-
ления,  структуры, объединения, массивыи классы. Кроме того,
имеется возможность устанавливать указатели на большинствоэ-
тих объектов и манипулировать ими со многими моделями  памя-
ти.

     Стандартные библиотеки  Turbo  C++,  а также ваши собс-
твенные программы и  файлы заголовковобеспечиваютоднозначные
идентификаторы (или выводимые из них выражения) и типы,  та-
ким образом,  что Turbo C++  можетнепротиворечиво  выполнять
доступ,  интерпретировать и (возможно) изменять битовые коды
в памяти,  соответствующей каждому активному  объекту  вашей
программы.

     Объявления устанавливают необходимыесоотношения распре-
деленияпамятимежду идентификаторами и объектами. Каждое объ-
явление  связываетидентификатор  с  некоторым  типом данных.
Большинство объявлений,  известных как объявления  определе-
ния, также задает создание (т.е. где и когда) объекта; иначе
говоря, распределениефизической памяти и ее возможную иници-
ализацию. Прочие объявления, называемые объявлениями ссылки,
просто делают указанные в них идентификаторы известными ком-
пилятору.  Один и тот же идентификатор может иметь множество
объявлений ссылки,  особенно в многофайловых программах, од-
нако для каждого идентификатора допустимо только одно объяв-
ление определения.

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


                           - 29 -
 Именующие выражения (Lvalues)

     Именующее выражение представляет собой локатор объекта,
выражение,  которое  обозначает объект.  Примером именующего
выражения может служить *P,  где P это выражение, дающее не-
пустой  указатель.  Модифицируемое  именующее выражение -это
идентифицирующее выражение, относящееся к объекту, к которо-
му возможен доступ и допустимо его изменение в памяти.  Ука-
затель константы const, например, не является модифицируемым
именующим выражением.  Указатель на константуможетбыть изме-
нен (а подлежащее обращению по этому указателю значение - не
может).

     Исторически в  слове  Lvalues буква L означает "левый";
это означает,  что Lvalue допускается в левой части (априни-
мающей  части)  оператора присваивания.  Здесь в левой части
оператора присваивания допустимы только модифицируемые  име-
нующие выражения.  Например,  если a и b - это не являющиеся
константами целочисленные идентификаторы с правильно распре-
деленнымидля них областями памяти,  тооба они являются моди-
фицируемыми именующими выражениями,  и присваиваниятипа a  =
1;и b = a + b; вполне допустимы.

 Значения переменной (Rvalues)

     Выражение a  + b не можетявляться именующим выражением,
и выражение типа a + b = a недопустимо,  поскольку выражение
в  левой части не относится кобъекту.  Такие выражения часто
называют значением переменной (значение правой части выраже-
ния).

     Типы и классы памяти

     Для связи  идентификаторов с объектами требуется, чтобы
каждый идентификаторимел как минимум два атрибута: класс па-
мяти  и  тип  (иногда  его  называют типомданных).  Компиля-
торTurboC++ определяет эти атрибуты появным или неявным объ-
явлениям в исходном коде программы.

     Класс памяти задает размещение объекта (сегмент данных,
регистр,  куча или стек) и продолжительность его времени су-
ществования (все время работы программы,  либо же при выпол-
нении некоторых конкретных  блоков  кода).  Класспамятиможет
быть установлен синтаксисом объявления,  расположением в ис-
ходном коде или обоими этими факторами.

     Тип, как говорилосьвыше,определяет размер памяти, расп-
ределяемый объекту,  и то, каким образом программа будет ин-
терпретировать     битовыекоды,     находящиесяв     памяти,
распределенной объекту.  Типданныхможнорассматриватькак мно-
жество значений (часто зависимо от реализации),  которые мо-
жет  принимать идентификатор данного типа,  совокупно с мно-
жеством операций,  выполнениекоторых допустимо для  значений
этого  типа.  Специальная операциявремени компиляции,sizeof,
позволяет определить размер в байтах любого стандартного или
определяемого  пользователемтипа данных;  дополнительную ин-
формацию об этой операции см. на стр. 81 оригинала.

   Контекст






Контекстом идентификатора называется часть программы, в которой данный идентификатор может быть использован для дос- тупа к связанному сним объекту. Существует пять категорий контекста: блок (или локальный), функция, прототип функции, файл и класс (только для С++). Контекст зависит от того, как и где объявлены идентификаторы. - 30 - Контекст блока Контекст идентификатора в случае контекста типаблока (или локального контекста) начинается в точке объявления и заканчивается в конце блока, содержащего данное объявление (такой блокназывается объемлющимблоком). Объявления парамет- ров в определении функции также имеют контекст типа блока и ограничены контекстом блока, где эта функция определена. Контекст функции Единственными идентификаторами, имеющими контекст типа функции, являются метки операторов. Именаметок могут быть использованыв операторах goto влюбой точке функции,где объ- явлена данная метка. Метки объявляютсянеявно; для этого за- писывается имя_метки: и за ним оператор. Имена меток в пре- делах функции должны быть уникальными. Контекст прототипа функции Идентификаторы, объявленные в списке объявлений параметров в прототипе функции (не являющиеся частью опреде- ления функции) имеют контекст прототипа функции.Конец этого контекста совпадает с концом прототипа функции. Контекст файла Идентификаторы с контекстомфайла, называемые часто гло- бальными, объявляются вне всех блоков и классов; их контекст лежит между точкой объявления и концом исходного файла. Контекст класса (С++) Классом можно считать именованный набор компонентов, включая сюда структуры данных и действующие с ними функции. Контекст класса относится, за некоторыми исключениями, к именам компонентов конкретного класса. Классы и ихобъекты имеют множество специальных правил доступа и определения контекста; см. стр. 102 - 113 оригинала. Контекст и пространства имен Пространство имен - это контекст, в пределах которого идентификатордолженбыть уникальным. В С существует четыре раздельных класса идентификаторов: 1. Имена меток операторов goto. Эти имена должны быть уникальными в пределах функции, в которой они объявлены. 2. Теги структур, объединений и перечислимых данных. Они должны быть уникальными в пределах блока, в котором они определены. Теги, объявленные вне какой-либо функции, должны быть уникальными относительно всех тегов, определенных вов- не. В С++ структуры, классы и перечислимые данные относятся к одному и тому же пространству имен. 3. Имена компонентовструктур и объединений. Они должны быть уникальными в пределах структуры или блока, в которомо- ни определены. На тип или смещение с одним и тем же именем в различных структурах ограничений не существует. 4. Переменные, определения типа и компоненты перечисли- мых данных. Они должны бытьуникальными вконтексте, где они определены. Идентификаторы, объявленные внешними, должны быть уникальными среди переменных, объявленных вовне. - 31 - Видимость Видимостью идентификатора называется область исходного кода программы, из которого допустим нормальный доступ к связанному с идентификатором объекту. Обычно контекст и видимость совпадают, однако бывают случаи, когда объект временно скрыт вследствие наличия иден- тификатора с тем же именем. Объект при этом не прекращает своего существования, но исходный идентификатор не может служить для доступа к нему до тех пор, пока не закончится контекст дублирующего идентификатора. Видимость не может выходить за пределы контекста; но контекст может превышать видимость. ... (* int i; char ch; // автоматическое распределение по умолчанию i = 3; // int i и char ch в контексте и видимы ... (* double i;


Страницы : 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30


adfun.ru









Форум раскрутка сайта и интернет-реклама
реклама - рекламное агентство -
Интернет PR агентство чат и форум
волчат знакомства - сайт знакомств
бесплатные компьютерные игры
фото знакомства
новые стеклопакеты -
качественное остекление балконов
портал - пластиковые окна -
закажите окна пвх в Москве

частная стоматология в Москве:
надежная стоматологическая клиника
протезирование зубов и
отбеливание зубов в стоматологии
Музыка - скачать mp3 музыка
каталог партнерские программы
ручной бесплатный обмен ссылками цифровые камеры цифровые фотоаппараты -
цифровые видеокамеры

театры - заказ билетов в театр -
магазин - продажа компьютеров
в Москве форум Испания - жилье -
недвижимость в испании

турфирма - испания туры
Переводы - бюро переводов
Законы - закон о товарных знаках,
Грузовые перевозки. АсМАП. Дальнобой закон о рекламе
Интернет казино
реклама на форуме и контекстная реклама
на Яндексе Баннерная сеть и
интернет каталог сайтов Holiday.Ru
Форумы политика, лучшие анекдоты
знакомства.