c++怎么调用类里面的私有类给动态数组

ErbaoOo 2019-09-29 04:20:15
class Training
{
private:
string explain; //培训说明
string date; //培训日期
int time; //时间
int money; //收费
int number; //注册人数
string classID; //培训班ID
int ID; //用户IDaaaaaa
string Surname; //姓氏
string name; //名
public:
Training();
//string classID; //培训班ID
void setid());
int getid();


};
我定义string*list = new string[1000]; 这里面每9个算一组数据 怎么能和类里面的成员分别对应. 还有怎么调用私有类
...全文
779 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这个要在类里面定义函数
qq_31069089 2019-10-06
  • 打赏
  • 举报
回复
Training *list = Training[10000]; 当然数组没有动态这说,要么用链表,要么用List容器,数据声明多大就是多大
qq_31069089 2019-10-06
  • 打赏
  • 举报
回复
直接存对象数组不行吗
shizainiu123 2019-10-03
  • 打赏
  • 举报
回复
同样的问题,求指教
侠客行杯莫停 2019-10-03
  • 打赏
  • 举报
回复
大佬,求助,帮帮忙
犹大的誓言 2019-10-02
  • 打赏
  • 举报
回复
你类函数体呢,不知道你public里面的函数是干嘛的。。总结就是看不懂
Yurii.Huang 2019-09-30
  • 打赏
  • 举报
回复
Friend友元了解下
ErbaoOo 2019-09-30
  • 打赏
  • 举报
回复
引用 22 楼 提及 的回复:

..谢谢啊啊啊啊啊啊 我容器不熟悉看着费劲 参考还是不错的
我有个问题我从文件里读的都是 string 类型 Training类里面有int型 又不能强转; 我用手写的
set 方法 参数不能是 从文件里的这个数组
void Training::setall(string ex ,string date2, int time2)
{
explain = ex; //培训说明
date=date2; //培训日期
time = time2;
}
时末终域 2019-09-30
  • 打赏
  • 举报
回复
引用 10 楼 提及 的回复:
等等 “我想 动态数组和类成员匹配 就像 结构体数组那样..” 不会是想说


class Training {
  private:
	string explain;  //培训说明
	string date;       //培训日期
	string classID;   //培训班ID
}

Training* t = new Training[100];

内存布局

/--------- 0 -----------\  /--------- 1 ------------\ /--------- 2 ------------\ ...  /--------- 99 ------------\
explain | date | classID | explain | date | classID | explain | date | classID | ... | explain | date | classID |

应该就是这样 不然怎么对应
前端小趴菜_JL 2019-09-30
  • 打赏
  • 举报
回复
在类里面定义一个公共权限的写函数,写函数里面是复制操作,这样可以在类外可以对私有成员进行·赋值,你试试这个,也不知对你有帮助吗?
提及 2019-09-30
  • 打赏
  • 举报
回复
什么类型不能转换 ?

你可以尝试用你的话解释一下我发的代码

你的描述很有问题
华宇.Tech 2019-09-30
  • 打赏
  • 举报
回复
不错不错,顶一下
提及 2019-09-29
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
可以这样 1000行9列

string **list;
list = new string*[1000];  //1000行
for(int i = 0; i < 1000; i++)
{
    list[i] = new string[9];   // 9列
}
私有成员,如果这个类是你写的,那就增加一个初始化函数,把你的数据传入,在里面转换就可以了。
铖邑 2019-09-29
  • 打赏
  • 举报
回复
果断写代码呀,还在想什么?不知道这种问题有这么挠头吗?
ErbaoOo 2019-09-29
  • 打赏
  • 举报
回复
引用 18 楼 提及 的回复:
我不想读,太乱

“按题目要求.. 我这题 又看不明白了..在已有文件(文件里目前是2个课程的信息)内容里加 客户 .这往哪加啊 头疼”
我还是看不懂

这还乱.. 等你想看来在回我吧

2 -培训编号
T1101 -培训班ID
Basic Web Programming Course 培训说明
1/12/2013 日期
8:00 – 17:00 时间
250.00 收费
2 注册人数
871012-10-5543 参与者ID
Tony 名
Stark 姓
700607-10-6231
Bruce
Banner
提及 2019-09-29
  • 打赏
  • 举报
回复
我不想读,太乱 “按题目要求.. 我这题 又看不明白了..在已有文件(文件里目前是2个课程的信息)内容里加 客户 .这往哪加啊 头疼” 我还是看不懂
ErbaoOo 2019-09-29
  • 打赏
  • 举报
回复
引用 16 楼 提及 的回复:
这不简单啊

还用什么 new,直接使用 vector


std::vector<你的class> vect;

// 这里有坑
while(!infile.eof()){

你的class temp

// 这种办法适合 struct,和 class 设计原则冲突
getline(infile, temp.第 1 个变量)
getline(infile, temp.第 2 个变量)
...
getline(infile, temp.第 n 个变量)

// 或者写一大堆 get set
// 方法有很多
// 这是最简单了

// 需要处理空行分隔符? 有坑

vect.push_back(std::move(temp));
}


按题目要求.. 我这题 又看不明白了..在已有文件(文件里目前是2个课程的信息)内容里加 客户 .这往哪加啊 头疼
提及 2019-09-29
  • 打赏
  • 举报
回复
这不简单啊 还用什么 new,直接使用 vector

std::vector<你的class> vect;

// 这里有坑
while(!infile.eof()){

你的class temp

    // 这种办法适合 struct,和 class 设计原则冲突
    getline(infile, temp.第 1 个变量)
    getline(infile, temp.第 2 个变量)
...
    getline(infile, temp.第 n 个变量)

    // 或者写一大堆 get set
    // 方法有很多
    // 这是最简单了

    // 需要处理空行分隔符? 有坑

    vect.push_back(std::move(temp));
}
铖邑 2019-09-29
  • 打赏
  • 举报
回复
那你只是S&L,没必要搞个数组啥的呀
加载更多回复(14)

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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