d its copies can be used interchangeably.

Given a set of types ` Args... ` , if  [ std::  declval
](http://en.cppreference.com/w/cpp/utility/declval) < Args  > (  )  ...  meet
the requirements for arguments to ` ranges::cpo ` above, ` ___cpo_fn_ ` models  

  * [ std::  invocable  ](http://en.cppreference.com/w/cpp/concepts/invocable) < __cpo_fn, Args...  > , 
  * [ std::  invocable  ](http://en.cppreference.com/w/cpp/concepts/invocable) < const  __cpo_fn, Args...  > , 
  * [ std::  invocable  ](http://en.cppreference.com/w/cpp/concepts/invocable) < __cpo_fn  & , Args...  > , and 
  * [ std::  invocable  ](http://en.cppreference.com/w/cpp/concepts/invocable) < const  __cpo_fn  & , Args...  > .   

Otherwise, no function call operator of ` ___cpo_fn_ ` participates in
overload resolution.

###  [ [ edit ](/mwiki/index.php?title=cpp/ranges/cpo&action=edit&section=2
"Edit section: See also") ]  See also

  * [ RangeAdaptorObject  ](/w/cpp/named_req/RangeAdaptorObject "cpp/named req/RangeAdaptorObject") (RAO) 
  * [ RangeAdaptorClosureObject  ](/w/cpp/named_req/RangeAdaptorClosureObject "cpp/named req/RangeAdaptorClosureObject") (RACO) 

Retrieved from " [
https://en.cppreference.com/mwiki/index.php?title=cpp/ranges/cpo&oldid=169999
](https://en.cppreference.com/mwiki/index.php?title=cpp/ranges/cpo&oldid=169999)
"

#####  Navigation

  * [ Support us ](http://www.cppreference.com/support)
  * [ Recent changes ](/w/Special:RecentChanges "A list of recent changes in the wiki \[r\]")
  * [ FAQ ](/w/Cppreference:FAQ)
  * [ Offline version ](/w/Cppreference:Archives)

#####  Toolbox

  * [ What links here ](/w/Special:WhatLinksHere/cpp/ranges/cpo "A list of all wiki pages that link here \[j\]")
  * [ Related changes ](/w/Special:RecentChangesLinked/cpp/ranges/cpo "Recent changes in pages linked from this page \[k\]")
  * [ Upload file ](http://upload.cppreference.com/w/Special:Upload "Upload files \[u\]")
  * [ Special pages ](/w/Special:SpecialPages "A list of all special pages \[q\]")
  * [ Printable version ](/mwiki/index.php?title=cpp/ranges/cpo&printable=yes "Printable version of this page \[p\]")
  * [ Permanent link ](/mwiki/index.php?title=cpp/ranges/cpo&oldid=169999 "Permanent link to this revision of the page")
  * [ Page information ](/mwiki/index.php?title=cpp/ranges/cpo&action=info)

  * In other languages 

  * [ Deutsch ](http://de.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ Español ](http://es.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ Français ](http://fr.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ Italiano ](http://it.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ 日本語 ](http://ja.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ Português ](http://pt.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ Русский ](http://ru.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")
  * [ 中文 ](http://zh.cppreference.com/w/cpp/ranges/cpo "cpp/ranges/cpo")

  * This page was last modified on 29 February 2024, at 07:18. 
  * This page has been accessed 3,460 times. 

  * [ Privacy policy ](/w/Cppreference:Privacy_policy "Cppreference:Privacy policy")
  * [ About cppreference.com ](/w/Cppreference:About "Cppreference:About")
  * [ Disclaimers ](/w/Cppreference:General_disclaimer "Cppreference:General disclaimer")

  * [ ![Powered by MediaWiki](/mwiki/skins/common/images/poweredby_mediawiki_88x31.png) ](//www.mediawiki.org/) [ ![Powered by GeSHi](//upload.cppreference.com/mwiki/images/2/2b/powered_by_geshi_88x31.png) ](http://qbnz.com/highlighter/) [ ![Hosted by Tiger Technologies](//upload.cppreference.com/mwiki/images/9/94/powered_by_tigertech_88x31.png) ](http://www.tigertech.net/referral/cppreference.com)