title: accessing std::tuple element by constexpr in type
body: <p>I would like to access to a tuple element at compile time by a value constexpr in the type</p>
  <pre><code>#include &lt;iostream&gt;
  #include &lt;tuple&gt;
  #include &lt;utility&gt;
  
  struct A {
      static constexpr int id = 1;
      void work() {
              std::cout &lt;&lt; &quot;A&quot; &lt;&lt; std::endl;
      }
  };
  
  struct B {
      static constexpr int id = 2;
      void work() {
              std::cout &lt;&lt; &quot;B&quot; &lt;&lt; std::endl;
      }
  };
  
  int main() {
      A a;
      B b;
      std::tuple&lt;A,B&gt; t = std::make_tuple(a,b);
  
      static constexpr int search_id = 2;
  
      auto&amp; item = std::get&lt; ? ( T::id == search_id ) ? &gt;(t);
      item.work();
      return 0;
  }
  </code></pre>
  <p>I guess using  <code>std::apply</code> and test would be a runtime search...
  I'm using c++20</p>