c/c++
zbird1988
吾志所向,一往无前,愈挫愈奋,再接再厉!
展开
-
获取二维字符数组元素个数的方法
char* str[4];int arrSize=sizeof(str);//16Bint subArrSize=sizeof(str[0]);//4Bint count=arrSize/subArrSize;//4原创 2013-09-10 22:37:48 · 3809 阅读 · 0 评论 -
C++ STL,ATL,WTL之间的联系和区别
STL即 Standard Template Library (标准模板库)STL是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。STL的代码从广义上讲分为三类:algorithm(算法转载 2014-02-05 00:14:09 · 807 阅读 · 0 评论 -
C++调用C#的库
把C#编译成DLL或者Axtive控件,再由C调用 !比如使用C++调用C#的DLLSwfDotNet是C#编写的,作者的C#水平,真是令我佩服。这是个特别好的读写Swf文件的库。但是,我要用在C++项目中,怎么让C++调用C#的DLL呢。今天一上午都在琢磨这个问题,耽误了很多时间,原因是编译是出现:warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件转载 2014-02-07 17:17:25 · 921 阅读 · 0 评论 -
一则简单的Windows共享内存IPC代码
Windows共享内存可以让两个进程对同一块内存进行读写。以下有2个进程,a.cpp生成A进程,b.cpp生成b进程。那么a进程将不停地读名为"Global\\MyFileMappingObject"的共享内存块,而b进程不停地写名为"Global\\MyFileMappingObject"的共享内存块。从而实现IPC。 //a.cpp#include #include转载 2014-03-19 00:14:22 · 494 阅读 · 0 评论 -
BOM(byte-order mark)
BOM(byte-order mark)2011-11-02 创建 最近接连遇到两个奇怪的事情,一,在WINDOWS CYGWIN下可以编译的C++代码文件,到了LINUX环境下使用GCC报存在游离的字符,导致编译失败。 (gcc编译报错:程序中有游离的‘\357’‘\273’‘\277’等 ,其原因有可能是 1,误用了全角的符号和空转载 2014-03-22 23:47:59 · 721 阅读 · 0 评论 -
高性能并行编程【openMP】
http://blog.csdn.net/denghp83/article/details/9449941最近在看多核编程。简单来说,由于现在电脑CPU一般都有两个核,4核与8核的CPU也逐渐走入了寻常百姓家,传统的单线程编程方式难以发挥多核CPU的强大功能,于是多核编程应运而生。按照我的理解,多核编程可以认为是对多线程编程做了一定程度的抽象,提供一些简单的API,使得用户不必花费太多转载 2014-05-05 18:29:51 · 1605 阅读 · 0 评论 -
MFC时间CTime/SYSTEMTIME/COleDateTime/time_t
1.CTime类获取当前时间CTime curTime;curTime = CTime::GetCurrentTime();CString strCurTime; strCurTime.Format(_T("%04d/%02d/%02d %02d:%02d:%02d"), curTime.GetYear(), curTime.GetMonth(转载 2014-03-25 00:20:22 · 1341 阅读 · 0 评论 -
多核编程文章汇总
以下为截止2009年3月21日前发布在本人博客中的多核相关的文章汇总,这些文章大部分摘自于我写的《多核计算与程序设计》一书。现将这些文章分类汇总,方便大家阅读。后续如果博客中继续发布了多核相关的文章,那么本文章将会被更新。如果对多核编程技术非常感兴趣的话,可以考虑将这篇文章加入您的浏览器收藏夹中,也欢迎您将这篇文章推荐给您的朋友。一、基础篇1、多核编程的几个难题及其应对策略主要转载 2014-05-06 08:58:39 · 522 阅读 · 0 评论 -
[转]C++强大背后
在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后改称为C++。C++是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming,转载 2015-01-27 09:38:53 · 745 阅读 · 0 评论 -
malloc,new,heapAlloc,virtualAlloc
malloc,new,heapAlloc,virtualAlloc(1) VirtualAllocPVOID VirtualAlloc(PVOID pvAddress, SIZE_T dwSize, DWORD fdwAllocationType, DWORD fdwProtect)VirtualAlloc是Windows提供的API,通常用来分配大块的内存。例如如转载 2015-01-14 10:09:55 · 662 阅读 · 0 评论 -
Windows平台下的内存管理
Windows平台下的内存管理1. Windows平台下主要的内存管理途径申请释放newdeletemallocfreeCoTaskMemAllocCoTaskMemFreeIMalloc::allocIMalloc/free转载 2015-01-22 08:46:47 · 573 阅读 · 0 评论 -
static_cast, dynamic_cast, reinterpret_cast, const_cast区别比较
static_cast, dynamic_cast, reinterpret_cast, const_cast区别比较(使用vs2010所带的编译器) 转载请注明来源 http://www.cnblogs.com/jerry19880126/ 隐式转换(implicit conversion)short a=2000;int b;b=a;sh转载 2015-02-10 09:11:50 · 608 阅读 · 0 评论 -
构造函数 中调用虚函数的问题
1 #include 2 using namespace std; 3 4 struct C180 5 { 6 C180() { 7 foo(); 8 this->foo(); 9 }10 virtual void foo() {11 cout "" this " vtadr: " void**)thi转载 2015-03-04 10:47:45 · 1632 阅读 · 0 评论 -
vc++常用函数总结
#include "stdafx.h"#include int _tmain(int argc, _TCHAR* argv[]){ char m_subject[256]; SYSTEMTIME curTime; GetLocalTime(&curTime); memset(m_subject,0,sizeof(m_subject)); sprintf(m_su原创 2013-09-12 18:12:25 · 2504 阅读 · 0 评论 -
C++11新特性:Lambda函数(匿名函数)
C++11新特性:Lambda函数(匿名函数)声明:本文参考了Alex Allain的文章http://www.cprogramming.com/c++11/c++11-lambda-closures.html加入了自己的理解,不是简单的翻译C++11终于知道要在语言中加入匿名函数了。匿名函数在很多时候可以为编码提供便利,这在下文会提到。很多语言中的匿名函数,如C+转载 2013-12-22 23:30:34 · 669 阅读 · 0 评论 -
二叉树的遍历:前序,中序,后序,层序--包括递归和非递归实现
//二叉树的遍历:前序,中序,后序,层序--包括递归和非递归实现/**//******************************************************************** created: 2005/12/30 created: 30:12:2005 10:39 filename: bintree.h author转载 2013-09-14 12:27:07 · 796 阅读 · 0 评论 -
const,mutable,volitale的区别
const 代表常量。mutable mutable int a;代表一个类的常成员函数,例如,void GetSomething() const; 可以修改该成员。void GetSomething() const{a = 0;}如果不加mutable,编译失败。volatile:就象大家更熟悉的const一样,volatile是一个类型修饰符(type转载 2013-09-27 17:41:14 · 734 阅读 · 0 评论 -
回调函数概念
回调函数就是一个通过函数指针调用的函数。参考:http://baike.baidu.com/view/414773.htm转载 2013-09-15 09:23:11 · 663 阅读 · 0 评论 -
c++语法
1.for...break for(pb=coderesult,i=0;i { switch(status) { case 1: break; case 2: break; case 3: break; default: break; } }break跳出的原创 2013-09-18 15:22:50 · 483 阅读 · 0 评论 -
C语言宏定义##连接符和#符的使用
C语言宏定义##连接符和#符的使用 C语言中如何使用宏C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念)。下面对常遇到的宏的使用问题做了简单总结。关于#和##在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量 通过替换后在其左右各加上一个双引号。比如下转载 2013-10-07 19:10:20 · 670 阅读 · 0 评论 -
GIS 系统开发
最近在做一个煤矿的三维项目,其中矿区的总体展示部分想采用gis技术,把矿区的总体展示,以及矿区内部的关键设备可以在矿区图上按实际的位置显示,支持一些关键算法,比如避灾路线之类的,如果有地质面的动态展示之类的最好了。 现在的实现技术并没有采用gis技术,而是用virtools+vc模拟实现了类似gis的功能,但是巷道图以及关键的设备显示并不准确,避灾路线也没办法动态生成。自己琢磨过gis技术后转载 2013-10-08 23:02:34 · 3255 阅读 · 4 评论 -
开发随笔-学习c++的思考,没有mfc,该怎么做??
因为最近项目的原因,这段时间特意把c++的书翻了出来,开始恢复c++了。c++因为在学校学习的时候感觉很困难,这也是我毕业后选择.net的原因之一了。因为项目是在windows下开发,主要是虚拟现实方面的应用,主要就是利用vc++ mfc跟虚拟现实软件 virtools sdk打交道。毕竟以前用过c++,恢复起来还是比较快的。c++基础->>windows32 api编程->>vc++ m转载 2013-10-08 23:04:10 · 1868 阅读 · 1 评论 -
简单的日志操作
淡定原创 2013-09-26 12:32:34 · 642 阅读 · 0 评论 -
vc++中的预编译文件pch的作用
预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里.这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的代码.为什么需要预编译头文件?一言以蔽之:提高编译速度.一般地,编译器以文件为单位编译,如果修改了一工程中的一个文件则所有文件都要重新编译,包括头文件转载 2013-10-13 07:21:46 · 1712 阅读 · 0 评论 -
vc++:字符串处理总结
1.strcpy是简单的拷贝sprintf 是带格式的拷贝char arr[256];strcpy(arr,"hello world!");sprintf(arr,"the value of arr is %s","hello world!");原创 2013-09-13 17:28:31 · 1012 阅读 · 0 评论 -
java调用c、c++的dll
MathOper.java文件:class MathOper { private native static void print();//在java中虽然print()是在c或c++中实现的,但是其调用的时候仍是通过声明所在类来调用的!它们实际上是属于当前类的! private native static float sum(float a,float b); public原创 2013-12-10 18:31:33 · 845 阅读 · 0 评论 -
TinyXml快速入门(一)
TinyXml快速入门(一)分类: HTML/XML2010-02-28 22:25 53945人阅读 评论(39) 收藏 举报xml数据库nullstringwindows测试作者:朱金灿来源:http://blog.csdn.net/clever101 对于xml文件,目前我的工作只是集中在配置文件和作为简单的信息文件来用,因此我不太喜转载 2013-12-29 09:57:57 · 626 阅读 · 0 评论 -
JsonCpp简介
1 前言JSON是一个轻量级的数据定义格式,比起XML易学易用,而扩展功能不比XML差多少,用之进行数据交换是一个很好的选择JSON的全称为:JavaScript Object Notation ,顾名思义,JSON是用于标记javascript对象的,详情参考http://www.json.org/。本文选择第三方库JsonCpp来解析json,JsonCpp是比较出名的转载 2013-12-30 18:36:43 · 765 阅读 · 0 评论