vector碰到类(结构体)二维数组?

wudicainiao2 2018-03-02 08:50:21
定义了一个数据类:

class DataType2
{
public:
DataType2();
virtual ~DataType2();

CString PtNo; //点号
int StaNO; //测站
double Hz; //观测水平角
double V; //观测垂直角
double Sd; //观测距离
};

现在要在主程序中使用一个二维数组DataType2 Myvector[][],里面的元素是上面这个类,但元素需要到文本文件中读取,且里面的维数也显示在文本文件中,如何定义这个vector?定义后如何使用赋值呢?


文本文件中:
13 //数组的第一维数
8 //数组的第二维数
3422.225 //观测值距离
180.344 //观测值水平角
90.287 //观测值垂直角
3897.679 //观测值距离
165.231 //观测值水平角
91.254 //观测值垂直角
……


怎么样使用和赋值呢vector呢?定义时怎么定义维数呢?



...全文
905 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
worldy 2018-03-12
  • 打赏
  • 举报
回复
vector<vector<具体类型>>
draculamx 2018-03-07
  • 打赏
  • 举报
回复
二维数组的本质,就是一维数组。。。
sichuanwww 2018-03-06
  • 打赏
  • 举报
回复
肯定可以实现,明确的是二维数组,只是个数不定。vector的基本功能就是动态数组。
wudicainiao2 2018-03-05
  • 打赏
  • 举报
回复
我提出的思路能实现么?
赵4老师 2018-03-02
  • 打赏
  • 举报
回复
仅供参考:
#include <stdio.h>
#include <stdlib.h>
int **newarr2d(int rows,int cols) {
    int **p,i;

    p=new int *[rows];
    if (NULL==p) exit(1);
    for (i=0;i<rows;i++) {
        p[i]=new int[cols];
        if (NULL==p[i]) exit(1);
    }
    return p;
}
void deletearr2d(int **p,int rows) {
    int i;

    for (i=0;i<rows;i++) {
        delete[] p[i];
    }
    delete[] p;
}
int main() {
    int **arr2d,i,j,r,c;

    r=4;
    c=5;
    //在堆中开辟一个4×5的二维int数组
    arr2d=newarr2d(r,c);
    for (i=0;i<r;i++) {
        for (j=0;j<c;j++) {
            arr2d[i][j]=i*c+j;
        }
    }
    for (i=0;i<r;i++) {
        for (j=0;j<c;j++) {
            printf(" %2d",arr2d[i][j]);
        }
        printf("\n");
    }
    deletearr2d(arr2d,r);

    r=6;
    c=3;
    //在堆中开辟一个6×3的二维int数组
    arr2d=newarr2d(r,c);
    for (i=0;i<r;i++) {
        for (j=0;j<c;j++) {
            arr2d[i][j]=i*c+j;
        }
    }
    for (i=0;i<r;i++) {
        for (j=0;j<c;j++) {
            printf(" %2d",arr2d[i][j]);
        }
        printf("\n");
    }
    deletearr2d(arr2d,r);

    return 0;
}
//  0  1  2  3  4
//  5  6  7  8  9
// 10 11 12 13 14
// 15 16 17 18 19
//  0  1  2
//  3  4  5
//  6  7  8
//  9 10 11
// 12 13 14
// 15 16 17
//
wudicainiao2 2018-03-02
  • 打赏
  • 举报
回复
希望可以写出具体代码,指导一下菜鸟!
oyljerry 2018-03-02
  • 打赏
  • 举报
回复
vector<vector> vector可以嵌套的
schlafenhamster 2018-03-02
  • 打赏
  • 举报
回复
为什么 要在主程序中使用一个二维数组 ? 1维数组 就·可以·了·
xiao0 1.c //纵向乘法表 2.c //标准乘法表 3.c //冒泡排序 4.c //验证算式正确 5.c //判断几位数 6.c //实现求二维数组的最大值 7.c //实现猜数 8.c //实现各位相加 9.c //实现求字符个数 10.c //求单词个数 xiao1 11.c //实现密码验证 12.c //实现str算法 13.c //折半法找数 14.c //递归汉诺 15.c //选择法排序 16.c //局部变量的生存期 17.c //全局变量的作用域 18.c //神奇的 i++ 19.c //预编译处理 20.c //神奇的指针 xiao.txt //刷题思路 xiao2 21.c //数组指针 22.c //出题验证系统 23.c //二维数组指针 24.c //秀秀指针 25.c //多级指针的应用 26.c //位运算 27.c //结构体变量 28.c //结构体指针 29.c //静态链表 30.c //动态链表 xiao3 31.c //共用体 32.c //文件的打开与关闭 33.c //文件的读和写 34.c //文件的块读 35.c //逆序输出 36.c //用指针的数值传递 37.c //if(0.5);if中的局部变量 38.c //指针交换地址不改原值 39.c //指针实现逆序输出 40.c //结构体传值 xiao4 41.c //结构体传数组值 42.c //结构体的各种赋值 43.c //结构体函数 44.c //结构体二维数组 45.c //学生信息管理系统 46.c //结构体函数 47.c //二维数组转一维 48.c //if(1?i>j:ivector(不定长数组) 28.cpp //map(映射) 29.cpp //结构体swap 30.cpp //结构体sort xiao3 31.cpp //计算两日期间隔 32.cpp //加密4个数 33.cpp //计算日期星期 34.cpp //queue(队列) 35.cpp //stack(栈) 36.cpp //sort 37.cpp //结构体sort 38.cpp //奶牛日光浴 39.cpp //lower_bound 40.cpp //贪心看电视 xiao4 41.cpp //两边同时减 42.cpp //贪心安排会场 43.cpp //iterator 44.cpp //背包问题 45.cpp //取数排列 46.cpp //全排列 47.cpp //节点 48.cpp //节点 49.cpp //村庄修公路 50.cpp //差分数组 xiao5 51.cpp //最大子段和 52.cpp //map应用 53.cpp //ASCII码排序 54.cpp //我的排序 55.cpp //隐藏的时间 56.cpp //好年份 57.cpp //最大最小值 58.cpp //由两天推日期 59.cpp //目标和 60.cpp //统计字符 xiao6 61.cpp //计算天数 62.cpp //统计单词

16,472

社区成员

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

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

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