文章分类 -  c++

摘要:原文地址:http://www.sudu.cn/info/html/edu/20070402/236107.html两个类相互包含引用的问题在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A类B,A中使用了B定义的类型,B中也使用了A定义的类型class A{ int i; B b;}class B{ int i; A* a;}请注意上面的定义内容,一般情况下是不能出现类A,类B相互引用都定义对象,即如下的样子:class A{ int i; B b;}class B{ int i; A a;}在这种情况下,想想可以有a.b.a.b.... 阅读全文
posted @ 2012-02-15 10:51 阿洒 阅读(680) 评论(0) 推荐(0)
摘要:最近在做项目的过程中,遇到STL中vector的多线程访问问题。问题大概是这样的:有一个全局的vector,一个写进程对该vector进行插入操作(push_back()),同时有一个读进程在监视该vector的内容并对其进行显示(操作:size(), at(i)),没有进行任何的线程同步,程序的编译没有任何问题,却一直出现运行时错误,主要是数组越界。 当时的考虑时:虽然vector不支持多线程,但是我的两个线程,一个写,一个却是只读,按理说不应该有问题,大不了有脏数据,但是我不在乎。网上有很多人说是线程同步问题,但是个人感觉不是这个问题。后来看了一篇网文之后才晃然大悟,其实是vector.. 阅读全文
posted @ 2012-02-10 19:37 阿洒 阅读(10504) 评论(0) 推荐(4)
摘要:最近在做一个MFC的项目,要用到sqlite3,具体的版本号不清楚(因为不是自己下载并重新封装的),但是知道还是比较新的,到少是3.6以上的版本。使用的是多字节字符集,中文路径无法识别,为此头疼了好一阵子,也知道是编码问题,网上大家都在说只要把自己所用的编码转成UTF-8就可以了,可是怎么转换都没有用。最后参考了网上的一篇文章才解决了问题(参考文章:http://linshenqi.iteye.com/blog/496746) 之前都是在CSqlite的open函数之外进行编码转换,然后把转换后的文件路径传递给CSqlite::open(CString filePath,...). 后来... 阅读全文
posted @ 2012-02-08 10:45 阿洒 阅读(535) 评论(0) 推荐(0)
摘要:原文地址:http://hi.baidu.com/%BA%D3%B1%DF%D2%BB%D6%A7%C1%F8/blog/item/80de543fbd2b43db9e3d62bf.html首先,用一个简单的例子来重现一下我所遇到的问题:(1)在VS2008的“PropertyPages”属性页中,选择“Configuration Properties”-->“General”,可以看到当前使用的字符集是“Multi-Byte Character Set”,也就是说程序中使用的是多字节字符集。(2)接下来看看ifstream打开txt文件的简单代码:#include"stdaf 阅读全文
posted @ 2012-02-08 10:17 阿洒 阅读(3801) 评论(0) 推荐(0)
摘要:原文地址:http://apps.hi.baidu.com/share/detail/716899C++中的计时函数是clock(),与其相关的数据类型是clock_t(头文件是time.h)。函数定义原型为:clock_t clock(void);这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据类型,在time.h文件中,我们可以找到对它的定义: #ifndef _CLOCK_T_DEFINED typedef long clock 阅读全文
posted @ 2012-01-14 18:11 阿洒 阅读(470) 评论(0) 推荐(0)
摘要:C++告诉我们在回收用new分配的单个对象的内存空间的时候用delete,回收用new[]分配的一组对象的内存空间的时候用delete[]。关于new[]和delete[],其中又分为两种情况:(1)为基本数据类型分配和回收空间;(2)为自定义类型分配和回收空间。对于(1),delete[]和delete是等同的。但是对于(2),情况就发生了变化。请看下面的程序。#include<iostream>;usingnamespacestd;classT{ public: T(){cout<<"constructor"<<endl;} ~T() 阅读全文
posted @ 2012-01-09 13:48 阿洒 阅读(206) 评论(0) 推荐(0)
摘要:----------------------------------griddata.h头文件-------------------------------------#ifndef GRIDDATA_H#define GRIDDATA_Hclass GridData {public: CString number;//产品编号 CString date; //测试日期 CString people_test; //测试人员 CString people_check; //检验人员 CString people_record; //记录人员 CString title; //... 阅读全文
posted @ 2011-12-13 11:38 阿洒 阅读(168) 评论(0) 推荐(0)