36 lines
1.4 KiB
Plaintext
36 lines
1.4 KiB
Plaintext
[/==============================================================================
|
|
Copyright (C) 2001-2010 Joel de Guzman
|
|
Copyright (C) 2001-2005 Dan Marsden
|
|
Copyright (C) 2001-2010 Thomas Heller
|
|
|
|
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
===============================================================================/]
|
|
|
|
[section Arguments]
|
|
|
|
Arguments are also functions? You bet!
|
|
|
|
Until now, we have been dealing with expressions returning a nullary function.
|
|
Arguments, on the other hand, evaluate to an N-ary function. An argument
|
|
represents the Nth argument. There are a few predefined arguments arg1,
|
|
arg2, arg3, arg4 and so on (and it's __bll__ counterparts: _1, _2, _3, _4 and so
|
|
on). Examples:
|
|
|
|
arg1 // one-or-more argument function that returns its first argument
|
|
arg2 // two-or-more argument function that returns its second argument
|
|
arg3 // three-or-more argument function that returns its third argument
|
|
|
|
`argN` returns the Nth argument. Examples:
|
|
|
|
int i = 3;
|
|
char const* s = "Hello World";
|
|
std::cout << arg1(i) << std::endl; // prints 3
|
|
std::cout << arg2(i, s) << std::endl; // prints "Hello World"
|
|
|
|
(See [@../../example/arguments.cpp arguments.cpp])
|
|
|
|
[blurb __tip__ Learn more about arguments [link phoenix.modules.core.arguments here.]]
|
|
|
|
[endsect]
|