c++程序这是什么意思?

//电话簿程序#include<iostream>#include<fstream>#include<string>usingnamespacestd;classcode... //电话簿程序
#include<iostream>
#include<fstream>
#include <string>
using namespace std;
class code{
string name;
int teleid;
public:
code(string n,int tele): name(n),teleid(tele){}//??int也可以类型 的也可以这样?
code(): name("noname"),teleid(0){} //构造函数
void set_T(int tele) { teleid=tele;}
void set_N(string n) {name=n;}
int get_T() {return teleid;}
string get_N () {return name;}
Wcode ( ofstream &dist)//将数据成员写入文件
{ dist.write(name.c_str(),20);
dist.write((char *)&teleid,sizeof(int)); }
Rcode (ifstream &sour) //从文件中读取数据给对象赋值
{ char k[20]; sour.read(k,20); name=k;
sour.read((char *)&teleid,sizeof(int)); }
};
void main() //将对象数组写入文件note.txt
{ string n;
int tele;
code note[5];
ofstream dp("d:\\note.txt",ios::out|ios::binary);
//以二进制方式打开文件note.txt,如文件不存在就创建
for (int i=0;i<5;i++){
cin>>n>>tele; //输入姓名与电话号码
note[i].set_N(n);//将姓名置入对象note[i]
note[i].set_T(tele);//将电话号码置入对象note[i]
note[i].Wcode(dp); }
dp.close();
}

有一些看不懂?
1.code(string n,int tele): name(n),teleid(tele){} 请问int类型也可以这样赋值么?
2.Wcode ( ofstream &dist)//将数据成员写入文件
{ dist.write(name.c_str(),20);
dist.write((char *)&teleid,sizeof(int)); }
中 ofstream &dist 什么意思?char *是什么意思?和指针有关么?
3.ios::out|ios::binary 这个是什么意思?
我们老师让做一个图书管理系统,用txt存数据,这是对象的写入和读出,对象怎么写到文件?思路是什么?、
非常感谢!!!!!!!!!!!!!!!
展开
 我来答
hsyu53
2012-04-29 · TA获得超过523个赞
知道小有建树答主
回答量:627
采纳率:0%
帮助的人:377万
展开全部
1. 是构造函数,可以那样写。
2. ofstream &dist表示Wcode函数参数是输出文件流的一个引用; char *在这里是强制类型转换,不是指针。
3. 双冒号::是作用域操作符。此处是,binary 和out 这两个东西都定义在ios(iostream)里面。整句话意思是以二进制形式输出。
追问
Wcode ( ofstream &dist)//将数据成员写入文件
{ dist.write(name.c_str(),20);
dist.write((char *)&teleid,sizeof(int)); }
中dist.write((char *)&teleid,sizeof(int));什么意思?
非常感谢,跪谢了!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
追答
dist.write函数的第一个参数是char *类型的。而teleid是int类型的,所以要将teleid的地址强制转换成char *。第二个参数是指定第一个参数里内容的长度,sizeof(int)就是int型数据占用的内存数。
samletwu
2012-04-29
知道答主
回答量:53
采纳率:0%
帮助的人:29.7万
展开全部
1. int类型 可以这些赋值啊, 为什么不能呢?
2. 一个是引用, 一个是指针, 如果这些基本概念不清楚的话, 为什么要看c++的程序啊?
3. ios::out|ios::binary表示用二进制方式打开输出文件, 用文本的话, 就不要用binary标志了.

如果不了解指针的话, 还是用c#写吧.
追问
我刚看完指针?char * 也不是指针啊? 
请问 ios::out|ios::binary 中的 三个分别到代表什么?binary标志什么意思?
非常感谢!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式