Narzędzia użytkownika

Narzędzia witryny


lambda

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Previous revision
Last revision Both sides next revision
lambda [2008/04/16 22:45]
przemo86
lambda [2008/04/16 23:24]
przemo86
Linia 134: Linia 134:
  
 </​code>​ </​code>​
 +
  
  
Linia 170: Linia 171:
  _1,  _1,
  case_statement<​0>​  case_statement<​0>​
-  (var(std::cout<< constant("​Wybrales 0 \n")),+ (std::cout << constant("​Wybrales 0 \n")),
  case_statement<​1>​  case_statement<​1>​
-  (var(std::cout<< constant("​Wybrales 1 \n")),+ (std::cout << constant("​Wybrales 1 \n")),
  default_statement  default_statement
-  (var(std::cout<< constant("​Nie mam pojecia co wybrales!\n"​)))+ (std::cout << constant("​Nie mam pojecia co wybrales!\n"​)))
  ) ((make_const(666)));​  ) ((make_const(666)));​
  
 </​code>​ </​code>​
 +
 +Użycie (make_const(666)) jest konieczne. Szablon tej funkcji jest następujący i jest zdefiniowany w bibliotece boost:
 +<code cpp>
 +template <class T> inline const T& ​ make_const(const T& t) { return t; }
 +</​code> ​
 +Przekazanie samego 666 mogłoby sprowokować błąd ponieważ 666 jest typu int i nie może mieć kwalifikatora const. Szablon natomiast potrzebuje const &.
  
 === Petla while === === Petla while ===
lambda.txt · ostatnio zmienione: 2008/04/16 23:27 przez przemo86