C++
HisinWang
CAD二次开发从业者。
QQ: 280338447
展开
-
C++调Python示例
C++调Python示例原创 2011-05-29 13:18:00 · 1947 阅读 · 6 评论 -
字节存储的大小端模式
计算机上存储数据分为两种形式:大端(big endian)——低地址存放高有效字节 小端(little endian)——低地址存放低有效字节 现在主流的CPU:intel系列的是采用的little endian的格式存放数据 注:变量的地址是存储单元的低地址如数0x12345678 低地址位 高低址位 大端: 12 34 56 78 小端: 78 56 34 12那么怎样用程式来判断大原创 2015-04-18 20:32:57 · 1276 阅读 · 0 评论 -
C++不同类型数值变量之间相互赋值的规则
C++不同类型数值变量之间的相互赋值,可以用以下的伪代码来描述:type1 a = ?;type2 b = ?;b = a; 或 b = (type2)a;示例:short a = 0xFF00;unsigned int b = a;cout << hex << endl;cout << a << endl;cout << b << endl;一、if (sizeof(a) == siz原创 2015-04-18 20:47:35 · 6614 阅读 · 0 评论 -
了解new-handler的行为
1.新建C++工程或VC工程,默认的new_handler为NULLstd::new_handler globalHandler = std::set_new_handler(NULL);std::set_new_handler(globalHandler);会发现globalHandler == NULL2.基于知识点1 当operator new无法满足某一内存分配需求时,由于globalH原创 2015-04-18 20:21:36 · 584 阅读 · 0 评论 -
Boost库的安装 (boost_1_47_0 + VS2008)
一、下载boost_1_47_0安装包http://www.boost.org/users/history/ http://sourceforge.net/projects/boost/files/boost/1.47.0/百度网盘下载: boost_1_47_0已编译版本下载 boost_1_47_0下载二、解压三、运行\boost_1_47_0\bootstrap.bat得到\boost_原创 2015-05-15 22:59:10 · 1836 阅读 · 0 评论 -
获取EXE及Dll文件路径信息
//-----------------------------------------------------------------------------// 获取EXE的路径信息//-----------------------------------------------------------------------------//// GetModuleFileName,第一个原创 2015-05-15 23:03:53 · 1794 阅读 · 0 评论 -
C++函数指针
一、基本语法现有一函数如下void foo(int a, int b){ cout << a + b << endl;}1、直接定义函数指针void (*pf)(int, int); // 定义函数指针变量pfpf = foo; // 赋值使其指向函数foo --- (1)pf = &foo; // 赋值使其指向函数foo -原创 2015-05-16 21:40:05 · 530 阅读 · 0 评论 -
C++指针之间的赋值与转换规则总结
Note:以下结论不适用于类的成员函数指针,关于类的成员函数指针会单独讨论。一任何类型的指针变量均可直接赋值给const void * 任何类型的非const指针变量均可直接赋值给void * const指针变量不可直接赋值给void *,除非通过强制类型转换class A{};typedef int (*pFun)(string); //函数指针int *pInt;const int原创 2015-05-16 21:36:08 · 1204 阅读 · 0 评论 -
C++类的成员函数指针
条款一 类的成员函数指针变量之间可相互强转class A{};class B{};class C{};typedef void (A::*AFun)(void);typedef int (B::*BFun)(int, int);typedef void (C::*CFun)(double);AFun pafun;BFun pbfun;CFun pcfun;//A,B,C类之间没有任何关原创 2015-05-16 21:46:11 · 665 阅读 · 0 评论 -
C++定制operator new,operator delete
在C++中,可以定制operator new,operator delete。一、定制全局的operator new,operator delete#include <iostream>using namespace std;class A{public: A() : m_a(0) { cout << "A::A()" << endl; } ~A() { cout << "A::原创 2015-05-17 10:56:33 · 469 阅读 · 0 评论 -
duilib学习资源汇总
duilib是国内首个开源的directui界面库,开放,共享,惠众,共赢,遵循bsd协议,功能十分强大,可以免费用于商业项目。duilib下载下载入门简明教程前言(1)VS环境配置(2)第一个程序 Hello World(3)响应按钮事件(4)自绘标题栏(5)XML配置界面(6)XML基础类(7)完整的自绘标题栏(8)界面布局(9)界面设计器 DuiDesigner(10)部原创 2015-05-17 10:50:32 · 1879 阅读 · 0 评论 -
理解C++默默编写并调用哪些函数
1.如果你定义一个空类,C++会自动为你生成默认构造函数,析构函数,复制构造函数,赋值操作符(operator=) class Empty{}; <==>class Empty{ Empty() { ... } Empty(const Empty& rhs) { ... } ~Empty() { ... } Empty& operator=(const Empt原创 2015-04-18 20:20:27 · 525 阅读 · 0 评论 -
轻松搞定Boost库的安装
Boost是一个非常强大的C++类库,但是如果直接下载源码编译的话,是一个非常麻烦的过程。 我们可以直接在sourceforge上下载已经编译好的boost库安装。地址如下: http://sourceforge.net/projects/boost/files/boost-binaries/原创 2015-03-31 20:51:27 · 835 阅读 · 0 评论 -
CMarkup类操作Xml总结
一、下载Markup.cpp 和 Markup.h下载地址:http://www.firstobject.com/dn_markup.htm 解压缩二、将此两个文件放置于工程目录下三、在需要用到CMarkup的地方 #include "Markup.h" 当然VC中还需要配置一原创 2011-07-28 23:21:31 · 3022 阅读 · 1 评论 -
C++博文收藏
C++虚函数表解析http://blog.csdn.net/haoel/article/details/1948051<!--h1 {font-weight:bold; font-size:200%; color:#008000; background:#8FBC8F}h2 {font-weight:bold; font-size:160%; col原创 2012-11-22 00:13:18 · 837 阅读 · 0 评论 -
C++指针原则个人总结
C++指针之间的赋值与转换规则总结C++函数指针C++类的成员函数指针原创 2012-11-24 23:07:22 · 877 阅读 · 0 评论 -
C++中extern与static的用法
C++中extern与static的用法很容易混淆,现总结如下:1.用于修饰全局变量的定义extern修饰全局变量的定义用于扩大全局变量的作用域,使其他文件也可使用该全局变量static修饰全局变量的定义用于限定该全局变量只能在本文件内使用我们知道每个.cpp文件编译后成为一个.obj文件extern的作用就是使a.obj能使用b.obj中定义的全局变量static则限定b.obj中原创 2012-10-29 23:23:12 · 1183 阅读 · 0 评论 -
C++设计模式---单例模式
适用于单线程的单例模式Singleton.h#ifndef _SINGLETON_H_#define _SINGLETON_H_class Singleton{public: static Singleton* GetInstance();private: Singleton(); ~Singleton(); Singleton(const Singleton&原创 2015-03-31 21:05:48 · 569 阅读 · 0 评论 -
C++实现仿vector的动态数组
STL中的vector相当于动态数组的概念,其可以根据元素的多少而动态扩展。 本文实现一简易的类似vector的动态数组,以探究动态数组的实现原理。#pragma oncetemplate<class T>class MyVector{public: MyVector() : m_p(NULL), m_size(0), m_capacity(0) {} ~MyVector()原创 2015-05-17 10:58:02 · 1137 阅读 · 0 评论