草庐IT

new_size

全部标签

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

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

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

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

c++ - string.empty() 或 string.size() == 0 哪个更快?

最近,在一次讨论中,一位程序员同事要求我做一些代码更改。我有类似的东西:if(mystring.size()==0)//dosomethingelse//dosomethingelse讨论是关于使用mystring.empty()来验证字符串是否为空。现在,我同意可以说string.empty()是更冗长和可读的代码,但它有什么性能优势吗?我做了一些挖掘,发现了与我的问题有关的以下2个答案:Implementationfrombasic_string.hSOAnswerthatpointstoISOStandard-here这两个答案都支持我的说法,即string.empty()与st

c++ - string.empty() 或 string.size() == 0 哪个更快?

最近,在一次讨论中,一位程序员同事要求我做一些代码更改。我有类似的东西:if(mystring.size()==0)//dosomethingelse//dosomethingelse讨论是关于使用mystring.empty()来验证字符串是否为空。现在,我同意可以说string.empty()是更冗长和可读的代码,但它有什么性能优势吗?我做了一些挖掘,发现了与我的问题有关的以下2个答案:Implementationfrombasic_string.hSOAnswerthatpointstoISOStandard-here这两个答案都支持我的说法,即string.empty()与st

c++ - Qt: "new without delete"是否会导致控件的内存泄漏?

我正在查看Qt示例here:在构造函数内部,它们有:Window::Window(){editor=newQTextEdit();//Memoryleak?QPushButton*sendButton=newQPushButton(tr("&Sendmessage"));//Memoryleak?connect(sendButton,SIGNAL(clicked()),this,SLOT(sendMessage()));QHBoxLayout*buttonLayout=newQHBoxLayout();//Memoryleak?buttonLayout->addStretch();bu

c++ - Qt: "new without delete"是否会导致控件的内存泄漏?

我正在查看Qt示例here:在构造函数内部,它们有:Window::Window(){editor=newQTextEdit();//Memoryleak?QPushButton*sendButton=newQPushButton(tr("&Sendmessage"));//Memoryleak?connect(sendButton,SIGNAL(clicked()),this,SLOT(sendMessage()));QHBoxLayout*buttonLayout=newQHBoxLayout();//Memoryleak?buttonLayout->addStretch();bu

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++ for 循环 - size_type 与 size_t

在C++Primer书,第(3)章,有以下for循环将vector中的元素重置为零。for(vector::size_typeix=0;ix!=ivec.size();++ix)ivec[ix]=0;为什么使用vector::size_typeix=0?我们不能说intix=0?在第二个表单上使用第一个表单有什么好处?谢谢。 最佳答案 C++标准说,size_type|unsignedintegraltype|atypethatcanrepresentthesizeofthelargestobjectintheallocationm

C++ for 循环 - size_type 与 size_t

在C++Primer书,第(3)章,有以下for循环将vector中的元素重置为零。for(vector::size_typeix=0;ix!=ivec.size();++ix)ivec[ix]=0;为什么使用vector::size_typeix=0?我们不能说intix=0?在第二个表单上使用第一个表单有什么好处?谢谢。 最佳答案 C++标准说,size_type|unsignedintegraltype|atypethatcanrepresentthesizeofthelargestobjectintheallocationm