草庐IT

INT_VOLUME_MAX

全部标签

c++ - int *array = new int[n];这个函数实际上在做什么?

我对如何创建动态定义的数组感到困惑:int*array=newint[n];我不知道这是在做什么。我可以说它正在创建一个名为数组的指针,它指向一个新的对象/数组int?有人愿意解释一下吗? 最佳答案 new分配存储您请求的对象/数组所需的内存量。在这种情况下,n个整数。然后指针会将地址存储到这block内存。但是要小心,这个分配的内存块在你写出来之前不会被释放delete[]array; 关于c++-int*array=newint[n];这个函数实际上在做什么?,我们在StackOve

C++: "vector<int>::size_type variable"- 以这种方式声明有什么意义?

我认为这是一个非常基本的问题,但我无法弄清楚。我习惯于在C++中使用数组,但我现在开始学习vector。我正在编写测试代码,遇到了一个问题。首先,这是我制作的代码:#include#include#includeusingnamespacestd;intmain(){vectorscore(10);for(vector::size_typei=0;i>score[i];}doubletotal=accumulate(score.begin(),score.end(),0);cout在for第9行中的句子,我声明i作为vector::size_type类型(因为有人告诉我这样做)。我用i

C++: "vector<int>::size_type variable"- 以这种方式声明有什么意义?

我认为这是一个非常基本的问题,但我无法弄清楚。我习惯于在C++中使用数组,但我现在开始学习vector。我正在编写测试代码,遇到了一个问题。首先,这是我制作的代码:#include#include#includeusingnamespacestd;intmain(){vectorscore(10);for(vector::size_typei=0;i>score[i];}doubletotal=accumulate(score.begin(),score.end(),0);cout在for第9行中的句子,我声明i作为vector::size_type类型(因为有人告诉我这样做)。我用i

c++ - C++ 中的 int64 和 int64_t 有什么区别?

我是C++和一般编码的新手。所以这个问题可能是noobish。使用类型int64或int64_t有什么区别。我看到其中一位软件开发人员在github上修改了他们的源代码,并将所有int64修改为int64_t。 最佳答案 int64_t是标准C++类型,用于正好为64位的有符号整数。int64不是标准类型。第一个C++标准没有固定宽度类型。在将int64_t添加到标准C++之前,不同的编译器都实现了64位类型,但它们使用自己的名称(例如longlong、__int64等)可能的一系列事件是,该项目最初将typedefint64为每个

c++ - C++ 中的 int64 和 int64_t 有什么区别?

我是C++和一般编码的新手。所以这个问题可能是noobish。使用类型int64或int64_t有什么区别。我看到其中一位软件开发人员在github上修改了他们的源代码,并将所有int64修改为int64_t。 最佳答案 int64_t是标准C++类型,用于正好为64位的有符号整数。int64不是标准类型。第一个C++标准没有固定宽度类型。在将int64_t添加到标准C++之前,不同的编译器都实现了64位类型,但它们使用自己的名称(例如longlong、__int64等)可能的一系列事件是,该项目最初将typedefint64为每个

c++ - 如何在 Visual Studio 上启用 __int128?

当我在VisualStudio的C++项目中键入__int128时,编辑器会将__int128的颜色更改为蓝色(类似于关键字)。但是当我编译源码时,出现以下错误:errorC4235:nonstandardextensionused:'__int128'keywordnotsupportedonthisarchitecture如何在VisualStudio上启用__int128? 最佳答案 MSDN没有将其列为可用,而最近的response同意,所以正式来说,不,没有名为__int128的类型,无法启用。此外,永远不要相信语法提示符

c++ - 如何在 Visual Studio 上启用 __int128?

当我在VisualStudio的C++项目中键入__int128时,编辑器会将__int128的颜色更改为蓝色(类似于关键字)。但是当我编译源码时,出现以下错误:errorC4235:nonstandardextensionused:'__int128'keywordnotsupportedonthisarchitecture如何在VisualStudio上启用__int128? 最佳答案 MSDN没有将其列为可用,而最近的response同意,所以正式来说,不,没有名为__int128的类型,无法启用。此外,永远不要相信语法提示符

c++ - 如何创建一个接受可变数量 int 的 C++ 构造函数

是否可以在可变参数构造函数中限制参数的类型?我希望能够表达Xx1(1,3,4);Xx2(3,4,5);//syntaxerror:identifier'Args'classX{templateX(Args...){}};//thisworksbutallowsothertypesthanintclassY{templateY(Args...){}};编辑以阐明意图:我想要实现的是将传递给构造函数的数据(编译时已知的常量)存储到静态数组中。还有其他的templatestructZ{staticintdata[sizeof...(values)];};templateintZ::data[

c++ - 如何创建一个接受可变数量 int 的 C++ 构造函数

是否可以在可变参数构造函数中限制参数的类型?我希望能够表达Xx1(1,3,4);Xx2(3,4,5);//syntaxerror:identifier'Args'classX{templateX(Args...){}};//thisworksbutallowsothertypesthanintclassY{templateY(Args...){}};编辑以阐明意图:我想要实现的是将传递给构造函数的数据(编译时已知的常量)存储到静态数组中。还有其他的templatestructZ{staticintdata[sizeof...(values)];};templateintZ::data[

c++ - 为什么 C++ 允许从 int 隐式转换为 unsigned int?

考虑以下代码:voidfoo(unsignedintx){}intmain(){foo(-5);return0;}此代码编译没有问题。像这样的错误会导致很多问题并且很难找到。为什么C++允许这样的转换? 最佳答案 简短的回答是因为C最初支持此类转换,并且他们不想破坏C++中的现有软件。请注意,某些编译器会对此发出警告。例如g++-Wconversion会对该构造发出警告。在许多情况下,隐式转换很有用,例如在计算中使用int时,但最终结果永远不会是负数(从算法中知道并且可以选择断言)。编辑:其他可能的解释:请记住,最初C是一种比现在C