Читайте также
R.13.4 Перегруженные операции
Перегружать можно большинство операций.имя-функции-оператор: operator операцияоперация: один из new delete + - * / % ^ & | ~ ! = ‹ › += -= *= /= %= ^= &= |= ‹‹ ›› ››= ‹‹= == != ‹= ›= && || ++ -- , -›* -› () []Две последние операции - это вызов функции (§R.5.2.2) и
Директива .maxstack
При реализации метода непосредственно средствами CIL нужно помнить о специальной директиве, которая называется .maxstack. Как следует из ее названия, директива .maxstack задает максимальное число переменных, которые может вместить стек в любой момент времени при
4. Символьные строки директива #define, функции printf( ) и scanf( )
В этой главе мы продолжим нашу "игру" с данными покопаемся в вопросах, выходящих за пределы тех, которые были связаны с типами данных, и рассмотрим символьную строку Сначала опи шем важное средство языка -
КЛЮЧЕВЫЕ СЛОВА: auto, extern, static, register
Одно из достоинств языка Си состоит в том, что он позволяет управлять ключевыми механизмами программы. Классы памяти языка Си - пример такого управления; они дают возможность определить, с какими функциями связаны какие переменные и
Директива #define
Синтаксис:#define <идентификатор> <текст>#define <идентификатор> <список параметров> <текст>Директива #define заменяет все вхождения <идентификатора> в исходном файле на <текст>, следующий в директиве за <идентификатором>. Этот процесс
Директива #undef
Синтаксис:#undef <идентификатор>Директива #undef отменяет действие текущего определения #define для <идентификатора>. Чтобы отменить макроопределение посредством директивы #undef, достаточно задать его <идентификатор>. Задание списка параметров не
Пустая директива
Для повышения читабельности программ СП ТС распознает пустую директиву, состоящую из строки, содержащей просто знак #. Эта директива всегда
3.12. Директива typedef
Директива typedef позволяет задать синоним для встроенного либо пользовательского типа данных. Например:typedef double wages;typedef vectorint vec_int;typedef vec_int test_scores;typedef bool in_attendance;typedef int *Pint;Имена, определенные с помощью директивы typedef, можно использовать точно так же, как
7.7. Директива связывания extern "C" A
Если программист хочет использовать функцию, написанную на другом языке, в частности на С, то компилятору нужно указать, что при вызове требуются несколько иные условия. Скажем, имя функции или порядок передачи аргументов различаются в
7.9.6. Указатели на функции, объявленные как extern "C"
Можно объявлять указатели на функции, написанные на других языках программирования. Это делается с помощью директивы связывания. Например, указатель pf ссылается на С-функцию:extern "C" void (*pf)(int);Через pf вызывается функция,
9. Перегруженные функции
Итак, мы уже знаем, как объявлять, определять и использовать функции в программах. В этой главе речь пойдет об их специальном виде – перегруженных функциях. Две функции называются перегруженными, если они имеют одинаковое имя, объявлены в одной
9.1.6. Указатели на перегруженные функции A
Можно объявить указатель на одну из множества перегруженных функций. Например:extern void ff( vectordouble );extern void ff( unsigned int );// на какую функцию указывает pf1?void ( *pf1 )( unsigned int ) = ff;Поскольку функция ff() перегружена, одного инициализатора ff
15. Перегруженные операторы и определенные пользователем преобразования
В главе 15 мы рассмотрим два вида специальных функций: перегруженные операторы и определенные пользователем преобразования. Они дают возможность употреблять объекты классов в выражениях так же
7.16 Перегруженные Операции
Большинство операций может быть перегружено, то есть, описано так, чтобы они получали в качестве операндов объекты классов (см. #8.5.11). Изменить приоритет операций невозмоно. Невозможно изменить смысл операций при применении их к неклассовым
8.9 Перегруженные Имена Функций
В тех случаях, когда для одного имени определено неколько (различных) описаний функций, это имя называется прегруженным. При использовании этого имени правильная функция выбирается с помощью сравнения типов фактических параметров с типами