c++ tuple
本帖最后由 zishen 于 2024-2-8 19:46 编辑今天听侯捷老师的c++课
照着敲了一遍代码
报了一堆错误
有大佬知道是因为什么吗?
lz这完全是照葫芦画瓢却没注意此瓢非彼瓢,C++等高级语言对于大小写、符号等都是敏感的
不同的C++解释器版本支持的语法会有所不同,真想学C++的话建议去系统学习而不是简单听一两节课 没学过,但是下面的代码我试了能跑。
是不是你的VS项目设置没有改C++标准为C++20?
#include <iostream>
template<typename... Values> class tuple;
template<> class tuple<> {};
template<typename Head, typename... Tail>
class tuple<Head, Tail...> : private tuple<Tail...>
{
typedef tuple<Tail...> inherited;
public:
tuple() {}
tuple(Head v, Tail... vtail) : hd(v), inherited(vtail...) {}
Head head() { return hd; }
inherited& tail() { return *this; }
private:
Head hd;
};
int main()
{
tuple<int, float> tif(1, 1.5);
std::cout << tif.head() << '\n';
std::cout << tif.tail().head() << '\n';
} 无语,你还是系统的去学下吧,发现你用的符号都不规范 magiclyan 发表于 2024-2-8 19:14
lz这完全是照葫芦画瓢却没注意此瓢非彼瓢,C++等高级语言对于大小写、符号等都是敏感的
不同的C++解释器版 ...
怎么系统学习呢? DEATHTOUCH 发表于 2024-2-8 19:15
没学过,但是下面的代码我试了能跑。
是不是你的VS项目设置没有改C++标准为C++20?
设置了,还是报错{:1_937:} 暗影夺魄 发表于 2024-2-8 19:20
无语,你还是系统的去学下吧,发现你用的符号都不规范
按视频敲的{:1_925:},我发出来是寻求帮助的,不是让你在这挑刺的 本帖最后由 DEATHTOUCH 于 2024-2-8 19:59 编辑
zishen 发表于 2024-2-8 19:48
设置了,还是报错
那我贴的那个代码能跑吗?
我自己测试了 VS 2022 可以,clang++ 17.0.6可以,g++ 13.2.0可以 DEATHTOUCH 发表于 2024-2-8 19:54
那我贴的那个代码能跑吗?
我自己测试了 VS 2022 可以,clang++ 17.0.6可以,g++ 13.2.0可以
不行:'(weeqw,我用的也是vs2022 zishen 发表于 2024-2-8 20:11
不行,我用的也是vs2022
按理说不应该这样的,要不你换一个MinGW或者LLVM的环境试试看
页:
[1]
2