首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NTL载体的大小调整

NTL载体的大小调整
EN

Stack Overflow用户
提问于 2013-12-01 15:28:47
回答 1查看 230关注 0票数 0

在运行程序时,我想调整ZZ矢量的大小。有没有办法,怎么做?我找到了方法.setLenght()或者.DosetLenght(),但是似乎只是初始化步骤,因为pro/gram拒绝用这些方法改变向量。

非常感谢。

代码语言:javascript
复制
 Vec<ZZ> v1,v2;
 v1.SetLength(8);
 v2.SetLength(8);
 ZZ velkeCislo,odmocnina,factor,test;
 long i = 0;
 cin >> velkeCislo;
 odmocnina = SqrRoot(velkeCislo);
 cout << "new v1 dlzka " << v1.length() << endl;
 for(i=0;i<v1.length();i++) {
 v1(i) = odmocnina;
 odmocnina++;
 cout << "Number1 " << v1(i) << endl;
 }
 for(i=0;i<v1.length();i++){
   v2(i)=(v1(i)*v1(i))-velkeCislo;
  cout << "Number2 " << v2(i) << endl;
 }
 bool found=false;
 int tp = v1.length();
 cout << "old v1 " << v1.length() << endl;
 v1.SetLength(tp+1); //causes error
  cout << "new v1 " << v1.length() << endl;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-01 16:46:35

您的代码的问题也解释了这里。您正在使用v1(i)方法访问数组,但这是一个基于1的索引系统,因此程序中有超出边界的访问权限。将v1(i)替换为v1[i] (这是基于零的),您的程序应该可以工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20313784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档