¥¥¥100分¥¥¥请教:对象的【三维数组】能用指针实现么?数组大小不定,这么new呀?

0sch 2003-10-22 03:25:26
如:

class A;//有很多数据项,成员函数很少

A*** a;//定义一个三维数组

//a[大小1][大小2][大小3],其中“大小1~3”有不同的取值
//“大小123”的实际含义是工况号、桩号、截面号

请问:我的类应该这么构造?能表达就行了,直接用三维数组大小不好定,用指针的指针的指针表示,new 的时候出错!头疼ing!

问题解决给100分
...全文
53 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Linux2001 2003-10-24
  • 打赏
  • 举报
回复
麻烦,麻烦!
zhukeke 2003-10-24
  • 打赏
  • 举报
回复
这种不定大小的数组是不能直接使用C++中的“数组”的。需要程序自己计算数组。具体方法如下:

class A;
int I,J,K; //确定三维数组的各维大小变量,由你的程序根据计算实际赋值

A** ppA;  //为什么要使用三级指针,我看不出任何理由。
      //当然,如果确实要三级指针,方法是类似的

ppA=malloc(I*J*K*sizeof(A*));
for(I=0;I<?;I++){    //?处由具体的数值代入,下同
for(J=0;J<?;J++){
for(K=0,K<?;K++)
*(ppA+I+J+K)=new A;
}
}
}
.......

//以下释放内存
for(I=0;I<?;I++){
for(J=0;J<?;J++){
for(K=0,K<?;K++)
delete (*(ppA+I+J+K));
}
}
}
free(ppA);
阿甘 2003-10-24
  • 打赏
  • 举报
回复
选择管理
0sch 2003-10-24
  • 打赏
  • 举报
回复
问个操作问题:
这个帖子我想加到100分,怎么加?
Phourm 2003-10-24
  • 打赏
  • 举报
回复
动态分配多维数组:
int*** a = new int**[2];
for(int i = 0 ; i < 2 ; i++)
{
a[i] = new int*[3];
for(int j = 0 ; j < 3 ; j++)
{
a[i][j] = new int[4];
for(int k = 0 ; k < 4 ; k++)
{
a[i][j][k] = 9;
}
}
}
注意delete
0sch 2003-10-24
  • 打赏
  • 举报
回复
to Phourm:你的方法不对,我最开始就是用的这种方法。感谢关注。
0sch 2003-10-24
  • 打赏
  • 举报
回复
用指针没有办法表示对象的三维数组吗?
问题不解决我可只能给20分的。
0sch 2003-10-22
  • 打赏
  • 举报
回复
自己来UP一下
arvid_gs 2003-10-22
  • 打赏
  • 举报
回复
直接用一维数组分配一段内存,然后你根据 i,j,k计算出在一维数组中的位置
然后就可以很容易操作了。
例如第一个工况号、桩号、截面号 就是 a[0],a[1],a[2],
一次存入就可以了!
0sch 2003-10-22
  • 打赏
  • 举报
回复
好像有的懂了,不过,太不直观了,怕搞错
阿甘 2003-10-22
  • 打赏
  • 举报
回复
可以直接开辟内存,然后在操作的时候模拟三维实现

不一定非要用三维数组或者是指针的指针的指针
popyyb 2003-10-22
  • 打赏
  • 举报
回复
mark
内容概要:本文围绕单相统一功率因数变流器的控制技术展开深入研究,提出并实现了基于不平衡d-q坐标系的控制器设计方案,旨在提升单相电压源逆变器(VSI)或交直变流器在统一功率因数模式下的运行性能。研究采用同步旋转参考坐标系下的控制策略,有效解决了单相系统中功率波动与电流畸变等问题,增强了系统的动态响应能力、稳态精度及抗干扰性。通过Simulink仿真平台构建完整的系统模型,对控制算法进行了全面验证,涵盖启动过程、负载突变、电网扰动等多种工况,充展示了该方法的可行性与优越性。同时,文中提供了详细的仿真资源获取途径,便于读者复现与拓展研究。; 适合人群:具备电力电子、自动控制及电力系统等相关专业知识背景,从事新能源发电、微电网、电能质量治理、变流器控制等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于单相逆变器实现高功率因数并网控制的技术开发与优化;②为弱电网环境下变流器稳定运行控制策略的研究提供仿真基础与技术支撑;③服务于高校相关课程教学、科研课题攻关及实际工程项目中的控制器设计与验证工作。; 阅读建议:建议读者结合所提供的Simulink仿真模型进行动手实践,重点掌握d-q坐标变换、电流环设计、PI参数整定等关键环节,并尝试将该方法推广至其他类型的单相电力电子系统中,进一步深化对同步参考坐标系下控制理论的理解与应用。
内容概要:本文围绕690V直驱风机网侧逆变器的阻抗建模与稳定性析展开,基于Simulink平台实现仿真研究,属于博士论文复现类工作。研究重点在于直驱风机并网系统中网侧逆变器的小信号阻抗建模,通过构建其正负序阻抗模型,深入析其在弱电网条件下的交互稳定性问题。内容涵盖阻抗建模理论、小信号扫频辨识方法的仿真实现,并通过仿真手段验证系统在不同电网强度下的稳定裕度,揭示潜在的宽频带振荡风险及其形成机理。该资源提供完整的Matlab/Simulink代码与模型,有助于研究人员系统掌握新能源并网系统的稳定性析方法与技术细节。; 适合人群:具备电力电子、电力系统自动化或新能源并网等相关专业背景,熟悉Matlab/Simulink仿真环境,从事新能源发电、并网控制与稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 学习并复现直驱风机等新能源发电系统的序阻抗建模方法;② 掌握利用Simulink进行小信号扫频以辨识系统阻抗特性并评估稳定性的关键技术;③ 深入理解弱电网条件下并网逆变器的稳定性问题、振荡机理及锁相环、电流控制器等关键环节对系统稳定性的影响。; 阅读建议:学习者应结合所提供的Simulink模型与配套代码,逐步操作并理解各功能模块的设计原理,重点关注控制环路对阻抗特性的作用,通过调整系统参数进行对比仿真,以深化对理论知识的理解并提升实际工程问题的析与解决能力。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧