Контрольная работа: Актуальные вопросы в работе с С++
У каждой функции может быть, как мы уже говорили, список аргументов. С помощью этих аргументов в функцию передается различная информация (например, значение числа, факториал которого надо подсчитать). Каждый аргумент представляет собой переменную или константу.
С помощью аргументов данные в функцию можно передавать тремя различными способами. Это передача аргументов по значению (используется по умолчанию), по ссылке и задание значения аргументов по умолчанию. Рассмотрим эти способы подробнее.
Когда аргумент передается в функцию по значению, изменение значения аргумента внутри функции не влияет на его значение вне функции. Чтобы позволить функции изменять ее аргументы, их нужно передавать по ссылке. Для этого в определении функции перед именем аргумента следует написать знак амперсанд «&».
<?php
// напишем функцию, которая бы добавляла
// кстрокесловоchecked
function add_label(&$data_str){
$data_str .= "checked";
}
$str = "<input type=radio name=article ";
// пусть имеется такая строка
echo $str ."><br>";
// выведет элемент формы –
// не отмеченную радио кнопку
add_label($str);
// вызовемфункцию
echo$str."><br>";
// это выведет уже отмеченную
// радио кнопку
?>
Пример 5.3. Передача аргументов по ссылке
В функции можно определять значения аргументов, используемые по умолчанию. Само значение по умолчанию должно быть константным выражением, а не переменной и не представителем класса или вызовом другой функции.
У нас есть функция, создающая информационное сообщение, подпись к которому меняется в зависимости от значения переданного ей параметра. Если значение параметра не задано, то используется подпись "Оргкомитет".
<?php
functionMessage($sign="Оргкомитет"){
// здесь параметр sign имеет по умолчанию
// значение "Оргкомитет"
echo "Следующее собрание состоится завтра.";
echo "$sign .<br>";