Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2717576
  • 博文数量: 416
  • 博客积分: 10220
  • 博客等级: 上将
  • 技术积分: 4193
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-15 09:47
文章分类

全部博文(416)

文章存档

2022年(1)

2021年(1)

2020年(1)

2019年(5)

2018年(7)

2017年(6)

2016年(7)

2015年(11)

2014年(1)

2012年(5)

2011年(7)

2010年(35)

2009年(64)

2008年(48)

2007年(177)

2006年(40)

我的朋友

分类: C/C++

2009-03-31 11:05:00

(原)

#include
#include
#include
#include
#include
#include
using namespace std;
#define cout qDebug()
class Dog
{
public: 
 Dog()
 {
  _number = 0;
 }  
 Dog(int number, const QString &name)
 {
  _number = number;
  _name = name;
 }  
 void setNumber(int number)
 {
  _number = number;
 }   
 int number() const
 {
  return _number;
 }  
 void setName(const QString &name)
 {
  _name = name;
 }  
 QString name() const
 {
  return _name;
 }
private: 
 int _number;
 QString _name;
};
QDataStream &operator<<(QDataStream &out, const Dog &dog)
{
 out << dog.number() << dog.name();
 return out;
}QDataStream &operator>>(QDataStream &in, Dog &dog)
{
 int number = 0;
 QString name;
 in >> number >> name;
 dog.setNumber(number);
 dog.setName(name);
 return in;
}
int main(int argc, char *argv[])
{
 /*QFile file("data.dat");
 Dog dog1(1, "caterpillar");
 Dog dog2(2, "momor");
 if(!file.open(QIODevice::WriteOnly))
 {
  cerr << "Cannot open file for writing: " << qPrintable(file.errorString()) << endl;
  return false;
 }       
 QDataStream out(&file);
 out.setVersion(QDataStream::Qt_4_3);
 out << dog1 << dog2;
 file.close();
 if(!file.open(QIODevice::ReadOnly))
 {
  cerr << "Cannot open file for reading: " << qPrintable(file.errorString()) << endl;
  return false;
 }
 QDataStream in(&file);
 in.setVersion(QDataStream::Qt_4_3);
 in >> dog1 >> dog2;
 cout << dog1.number() << ", " << qPrintable(dog1.name()) << endl
   << dog2.number() << ", " << qPrintable(dog2.name()) << endl;*/
 QList list;
 Dog dog1(1, "caterpillar");
 Dog dog2(2, "momor");
 list << dog1 << dog2;
 QList::const_iterator iterator = list.begin();
 while(iterator != list.end()) {
  cout << (*iterator).number() << ", " 
   << qPrintable((*iterator).name()) << endl;
  ++iterator;
 }
 return true;
}
阅读(1602) | 评论(0) | 转发(0) |
0

上一篇:Qt编程点积

下一篇:QImage - QByteArray - QString

给主人留下些什么吧!~~