- 博客(31)
- 资源 (3)
- 收藏
- 关注
转载 C++指针直接调用类成员函数探讨
摘要 本文分析了C++编程中用指针调用“类” 成员函数时出现的问题、原因及后果,讨论了一般函数指针和“类”成员函数指针的不同。得出结论: 任何指向“类”的成员函数指针,由于携带额外的所属对象信息,与一般的函数有根本的不同,不能直接用来进行函数调用。此外,本文给出了几种间接调用类的成员函数的方法。本文所有代码在VC++6.0下编译通过。 要害词 C++编程; 类; 成员函数; 函数指针; 函数调用
2014-05-21 16:12:37
1182
转载 Linux系统环境下关于多进程并发写同一个文件的讨论
Linux系统环境下关于多进程并发写同一个文件的讨论2011-09-18 14:42:19分类: LINUX讨论关于并发环境下,多个进程对同一文件写入的问题,我们会涉及到文件共享的知识。在开始之前,我们先讨论一些有关文件共享的知识。1. 文件共享 Unix系统支持在不同进程间共享打开的文件。为此,我们先介绍一下内核用于所有I/O的数据结构。注意,下面的说明是概
2014-05-20 15:32:43
3418
转载 c++类成员函数作为回调函数
我以前写线程时要么老老实实照着声明写,要么使用C++类的静态成员函数来作为回调函数,经常会因为线程代码而破坏封装.之前虽然知道类成员函数的展开形式,但从没想过利用过它,昨天看深入ATL时无意中学会了这一招:)类成员方法是一个比较特殊的函数,它在编译时会被转化成普通函数,比如有TMyClass类: class TMyClass{view sourceprint?
2014-05-15 16:06:38
962
转载 linux 下查看系统资源和负载,以及性能监控
linux 下查看系统资源和负载,以及性能监控wen158809179 于 星期二, 20/03/2012 - 13:32 提交1,查看磁盘df -h2,查看内存大小freefree [-m|g]按MB,GB显示内存vmstat3,查看cpucat /proc/cpuinfo只看cpu数量grep "model nam
2014-03-19 10:26:00
577
转载 在win7注册dll报错的问题
错误:在win7注册一个dll报错,DllRegisterServer的调用失败,错误代码为0x80004005 解决: 1. 点击windows的“开始”菜单,以管理员方式选择“运行”; 2. 在输入框中输入“regsvr32 jscript.dll”(不包括双引号),点击确认; 3. 再次点击windows的“开始”菜单,以管理员方式选择“运行”; 4.
2013-11-26 12:51:26
821
原创 hp_unix sftp文件传输(采用expect实现sftp自动传输文件)
1、下载TCL和Expect源程序TCL程序下载地址:http://www.tcl.tk/software/tcltk/download.html下载的版本为tcl8.5.8Expect下载的地址为:http://expect.nist.gov/#unix下载的版本为expect5.432、.编译TCL和Expect源程序编译TCL:将TCL源程序传输到小型机的
2013-11-18 09:50:19
3773
原创 aix sftp传输文件
比如A机usera用户往B机userb用户用sftp传输文件test.txt1. 产生密钥登录A机,输入如下脚本,生成密钥。a) $ ssh-keygen -t rsab) 一直点击回车,即可生成密钥,密钥在当前用户目录下的.ssh目录中。c) 给密钥赋权限chmod 755.ssh2. 传输公钥到B
2013-11-18 09:35:01
7967
原创 多线程 list没有锁好导致的 不安全宕机问题
问题:因为代码中执行m_LoggerList.size()语句没有加锁,导致内存中出现了空指针,以下为状态推送线程的堆栈信息:(gdb) thread 20[Switching to thread 20 (Thread 4884)]#0 std::_List_const_iterator::operator++() (this=0x20c6b498) at /opt/freew
2013-11-08 16:42:22
1568
原创 一个简单的读写同步的空间解决方法
struct TTest{ int iIndexType; char cDate[150]; void init(){ iIndexType=NO_DATE; memset(cDate,0,sizeof(cDate)); }; TEventPack(){ init(); };};class CTestManager{public:
2013-11-08 16:28:10
625
原创 oracle times ten 学习笔记
1. times ten本质上是关系型数据库。2. 性能:12个cpu情况:读300万/s,写50万/s。3. 可靠性:通过主备机的实时备份保证单点故障,也即应用程序的请求消息在主机times ten(一下简称active)和备机times ten(一下简称standby)的内存都会有一份,可以避免单点故障。4. 应用程序可以选择是从内存返回还是从文件返回,也即应用程序的请求是到tim
2013-11-08 16:13:02
1838
原创 stl学习--我的第一个容器
#include templatestruct myblock{ typedef T value_type; typedef value_type* pointer; typedef const value_type * const_pointer; typedef value_type & reference; typedef const value_type*
2013-11-08 15:15:06
591
原创 stl学习笔记1106
#include #include #include #include #include #include #include //#include using namespace std;typedef vector::iterator strtab_itorator;bool stringcmp(strtab_itorator astart,strtab
2013-11-06 17:15:17
491
原创 aix5.3移植到aix7.1
gcc安装 从IBM上下载RPM包(ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/gcc/)gcc-4.2.0-3.aix6.1.ppc.rpm,gcc-cplusplus-4.2.0-3.aix6.1.ppc.rpm,libgcc-4.2.0-3.aix6.1.ppc.rpm,libstdc
2013-10-24 12:46:30
1149
转载 DEBUG map delete释放报错问题
如上文所述(MSDN): _CrtIsValidHeapPointer确认内存地址在本地堆。……如果静态链接C运行库,那么,dll拥有一个独立于应用程序(调用它的exe)的本地堆。(所以你上面的程序会Debug Assertion Failed),如果没有定义_DEBUG,那么_CrtIsValidHeapPointer将被预处理器移除。 所以方法有二: 1、动态链接C运行库。
2013-09-24 15:01:59
724
转载 vs 2008打断点失效
1.检查工程配置是否设置正确。C++>General->Debug Information Format->Program Database (/Zi)C++>Optimization->Optimization->Disabled (/Od)Linker->Debugging->Generate Debug Info->Yes (/DEBUG)Linker->Debuggin
2013-08-28 21:07:03
679
原创 AIX7.1 GCC升级
系统版本:redhat 5.5原GCC版本:gcc-4.1.2新GCC版本:gcc-4.6.1 1.安装gcc-4.2.0,编译报错:rid_t was not declared in this scope解决:安装gcc高版本2. 下载gcc-4.6.1.tar.bz2a) 安装gcc4.6.1bzcat gcc-4.6.1.tar.bz2 | t
2013-07-15 15:08:05
2182
转载 多线程中的 WaitForSingleObject 与 EnterCriticalSection 性能比较
多线程中的 WaitForSingleObject 与 EnterCriticalSection 性能比较博客分类: 多线程转:http://apps.hi.baidu.com/share/detail/16243424 摘要 在 Microsoft Windows 平台上有几种以原子方式锁定代码和数据的不同方法。此白皮书的主要目的是向开发人员简要介绍
2013-07-15 14:36:45
857
转载 WINDOWS下线程同步探讨
WINDOWS下线程同步探讨 概述线程同步可以采用多种方式。可以在用户方式下实现,也可以在内核方式下实现。前者的优势在于速度快,因为不用在用户方式和内核方式之间切换,但只能用于同一个进程内的线程之间的同步;后者是使用内核对象的方式,速度虽慢,但可以用于不同进程之间的线程同步。而且后者相对前者方法丰富许多,功能也强大许多。用户方式下的线程同步互锁函数组下列
2013-07-15 14:21:01
524
原创 redhat linux64 yum和g++安装
http://blog.youkuaiyun.com/lincy100/article/details/6803855http://mirrors.163.com/centos/6/os/x86_64/Packages/
2013-07-08 14:37:09
3664
原创 安装loadrunner报错和解决
报错:命令行选项语法错误。键入‘命令/?‘可获得帮助信息。”原因和解决办法:竟然是补丁vs2005 sp1补丁不能放到双字节目录下,将安装文件放到没有双字节的目录再次安装好了。例如: SP3和SQL Server 2000的补丁文件夹都不能放在双字节目录下(双字节目录----是指以中文命名的目录)。 报错:此计算机上缺少 vc2005_sp1_with_atl_fix_re
2013-06-28 10:39:15
1485
转载 记一次Qt Creator编译产生CrtIsValidHeapPointer的错误
分类: QT2013-01-23 14:52 108人阅读 评论(0) 收藏 举报目录(?)[+]1问题描述我用Qt Creator在ubuntu下面编译了一个dll(姑且称为a.dll)吧,和一个exe(姑且程序b.exe)吧,运行是好好的。但是迁移代码到windows上面的时候编译也正常,但是在我关闭窗口的时候,程序断点在delete语句处,
2013-05-17 23:09:09
1086
转载 C#性能优化实践
C#性能优化实践性能是考量一个软件产品好坏的重要指标,与产品的功能有着同等重要的地位。用户在选择一款软件产品的时候基本都会亲身试验比较同类产品的性能。作为选购那个软件重要因素之一。软件的性能指什么降低内存消耗 在软件开发中,内存消耗一般作为次要的考虑,因为现在的计算机一般都拥有比较大的内存,很多情况下,性能优化的手段就是空间换取时间。但是,并不是说,我们可以肆无忌惮的挥
2013-03-27 19:29:05
585
转载 AIX7.1 GCC升级到4.6.1
转载http://wgkgood.blog.51cto.com/1192594/917632 最近由于需求的原因,需要把目前gcc-4.1.2升级到gcc-4.6.1。一、安装环境系统版本:redhat 5.5原GCC版本:gcc-4.1.2新GCC版本:gcc-4.6.1二、正式安装1、下载安装的源码:如下需要下载以下包:gcc-4.6.1.tar.
2013-03-21 11:38:44
943
转载 C#中调用OCX控件
2010-10-11 18:42:24| 分类:C#经典 | 标签:调用ocx控件的步骤 c# |字号大中小订阅 调用OCX控件的步骤:1、在系统中注册该ocx控件,命令:regsvr32.exe 控件位置(加 /u 参数是取消注册)2、在.net的工具箱中添加该控件,拖到form中去就可以了。不用工具箱的话,自己手工添加,需要注意一个问题,就
2013-03-11 20:57:02
1623
原创 makefile学习笔记
1.清空目标文件的规则一般的风格都是: clean: rm edit $(objects) 更为稳健的做法是: .PHONY : clean clean : -rm edit $(objects) 2.伪目标 all : prog1 prog2 .PH
2013-03-06 14:15:56
507
转载 makefile 的简单模板
makefile 的简单模板! 来源: 缪良华的日志 1 #Source file2 3 SRC = ThreadQueue.cpp4 #Object file5 OBJ = $(SRC:.cpp= .o)6 7 #Output execution file8 PROGRAM = ThreadQueue9 10 #Comp
2013-03-06 11:36:05
502
原创 dbx调试
1.当调试一个程序,要进入到不在该目录下的源码文件时会出现could not read **.cpp解决方法:找到不能进入的文件的文件名所在的路径执行use 路径file **.cpp2.单步跟踪s,执行下一步n3.其他常用命令参考http://www.kuqin.com/aixcmds/aixcmds2/dbx.htm#a2699ee
2013-03-06 11:26:55
657
原创 vc6.0 连接错误
错误提示:nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadexnafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex解决方法:1、“Project”->“
2012-12-17 15:19:32
564
原创 orcle数据库操作相关脚本
1.启动实例export ORACLE_SID=Instnamesqlplus / as sysdbastartup2.看实例是否通tnsping Instname3.启动监听sqlplus ‘/as sysdba'connect /as sysdbalsnrctl start4.导入表结构和数据 Sqlplus gold/gold@ppmta连接
2012-04-06 09:01:33
425
原创 Effective c++ Item19代码练习
先看如下代码:例1:#include using namespace std;class rational {public: explicit rational(int numerator = 0, int denominator = 1); int
2011-10-18 14:17:30
330
原创 操作系统日期函数的调用和显示问题
先看一个简单的获取日期的语句:char cTime[9];memset(cTime,0,sizeof(cTime);char cDate[9];memset(cDate,0,sizeof(cDate);struct tm tmloc; time_t tim
2011-10-18 12:04:53
443
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人