我正在提取一个元组,auto [...]
但我只使用一些元组坐标。我想知道是否有一些优雅的方法可以避免unused-variable
编译器警告?这是我的代码。
#include <iostream>
#include <vector>
#include <tuple>
int main(int argc, char **argv)
{
std::vector<std::tuple<char,float,int>> myvec;
myvec.push_back(std::make_tuple('a',3.5,8));
myvec.push_back(std::make_tuple('b',1.5,4));
auto [c,f,_] = myvec[1];
std::cout << "char float is " << c << " " << f << "\n";
return 0;
}
这是编译行+警告:
$ g++ -Wall -std=c++17 main.cpp -o main
main.cpp: In function ‘int main(int, char**)’:
main.cpp:10:13: warning: unused variable ‘_’ [-Wunused-variable]
auto [c,f,_] = myvec[1];
^
(我使用了一个类似 Haskell 的变量_
来自我记录最后一个 int 是一个无关值的事实)。