
5-Languages
Code-Ninja
80后半道出家码农一枚,搬砖道行尚浅,持续修炼中!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C#与C/C++的交互
C#与C/C++的交互欢迎转载,请注明出处及作者本文转载于:http://www.cnblogs.com/warensoft/archive/2011/12/09/warenosoft3d.html最近在编写Warensoft3D游戏引擎,并预计明年年初发布测试版本,底层引擎使用DirectX和MONO来编写,上层的逻辑使用C#来编写,因此编写了大量C#与C++互调的代转载 2015-03-18 11:23:25 · 1891 阅读 · 0 评论 -
强制类型转换
l 旧风格的转换:(T) extype //cast extype to be of type TT(extype) //cast extype to be of type T, 是函数风格的写法从本质上来说,上述两种写法是没有区别的。l 使用标准C++的类型转换符:static_cast、dynamic_cast、reinterdivt_cast、和const_cast1. static_cast:语法:static_cast (extype)该运原创 2011-05-10 11:01:00 · 579 阅读 · 0 评论 -
智能指针
<br />智能指针是存储指向动态分配(堆)对象指针的类,用于生存期控制。能够确保自动正确地销毁动态分配的对象,防止内存泄露。实现的技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数器跟踪该类有多少个对象共享同一个指针。<br />l 每次创建新的对象时,初始化指针并将引用计数置为1。<br />l 当对象作为另一对象的副本而创建时,拷贝构造函数拷贝指针增加与之相应的引用计数。<br />l 对一个对象进行赋值时,赋值操作符减少左操作数所指对象的原创 2011-05-10 21:37:00 · 584 阅读 · 0 评论 -
用指针访问类中private成员
<br />C++中,利用指针可以访问private数据成员。<br />先看下面代码:<br />//利用指针访问private成员#include<iostream>using namespace std;class CTest{ private: int x; int y; public: CTest(int value_x,int value_y) { x = value_x; y = value_y; } ~CTest原创 2011-05-09 17:29:00 · 3655 阅读 · 0 评论 -
布同:如何循序渐进学习Python语言
大家都知道Python语言是一种新兴的编程语言。1989年,Python就由Guido van Rossum发明。Python一直发展态势很好。 原因有几点:1、跨平台性好。Linux、Windows、MacOS、塞班……。2、快速易学。3、模块齐全。 Python本身是一种面向对象的脚本语言。功能涉及到应用程序开发、网络编程、网站设计、图形界面编程等等,基本囊转载 2013-06-09 09:00:26 · 1445 阅读 · 0 评论 -
Python正则表达式指南
1. 正则表达式基础1.1. 简单介绍正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语转载 2013-02-25 14:05:09 · 664 阅读 · 0 评论 -
Python串口编程(转载)
python的串口网上有很多例子,这里了只是把认为好的整理到一起。首先,应该安装serial模块,还能开始后续的操作。我用的python2.6,serial模块可以在这里下载安装serial模块下载1,字符串的发送接收短接串口的2、3脚,创建一个文本,如:[python] view plaincopyprint?import serial转载 2012-09-19 17:38:56 · 44324 阅读 · 2 评论 -
Python字符串操作
s.strip() .lstrip() .rstrip(',') 去空格及特殊符号复制字符串Python1#strcpy(sStr1,sStr2)2sStr1 ='strcpy'3sStr2 =sStr14sStr1 ='str转载 2011-12-21 10:17:26 · 1675 阅读 · 0 评论 -
Python对文件及文件夹的一些操作
python中对文件、文件夹的操作需要涉及到os模块和shutil模块。创建文件:1) os.mknod("test.txt") 创建空文件2) open("test.txt",'w') 直接打开一个文件,如果文件不存在则创建文件创建目录:os.mkdir("file") 创建目录复制文件:shutil转载 2011-11-21 14:22:23 · 793 阅读 · 0 评论 -
malloc 和new的区别
今天面试,问到这个问题,下面总结一下:1. malloc/free是C++/C语言的标准函数库,new/delete是C++的运算符2. 光用malloc/free是无法满足动态对象的要求的。对象在创建的同时要自动执行构造函数,对象在消亡时要自动执行析构函数。但是malloc/free不是运算符,不在编译器控制权限之内,所以不能把执行构造函数和析构函数的任务加给malloc/free。3. 使用malloc/free需要头文件的支持,但是new是运算符,不需要原创 2011-05-09 13:54:00 · 477 阅读 · 0 评论 -
有关于虚函数
关于C++中的虚函数虚函数是C++实现多态的重要表现。多态的重要特征之一就是使用指向父类的指针或引用来操作对象。看一下下面的代码:#includeusing namespace std; class Father{ public: void show();}; class Child : public Father{ public: vo原创 2011-05-06 10:31:00 · 617 阅读 · 0 评论 -
C++面试题
前几天参加西门子上海的面试,问到的相关问题记录如下:1.给函数的默认参数赋值的顺序是怎样的?原理是什么?第一问答对了,但是原理没说上来。2.子类继承于父类时,构造函数的调用顺序是什么?请从运行时状态解释原因?第一问答对,但是不清楚运行时原理3.virtual malloc?(记不得是不是这个了,反正与malloc有关)4.构造函数能否声明为virtual?为什么?不原创 2011-06-13 21:32:00 · 1033 阅读 · 0 评论 -
C++通过Callback向C#传递数据
C++通过Callback向C#传递数据本文转载于:http://www.roboby.com/c%E9%80%9A%E8%BF%87callback%E5%90%91c%E4%BC%A0%E9%80%92%E6%95%B0%E6%8D%AE.html现在比较流行C#与C++融合:C#做GUI,开发效率高,C++做运算,运行效率高,二者兼得。但是C++与C#必然存在数据交互,C#与转载 2015-03-18 11:22:37 · 6386 阅读 · 0 评论 -
Windows中使用Python和C/C++联合开发应用程序起步(Python/C API应用)
Windows中使用Python和C/C++联合开发应用程序起步(Python/C API应用) 2009-10-01 23:27:38| 分类: 学习|字号 订阅C/C++几乎无所不能,从功能上讲这是没错的。而从实际效用上讲则不尽然。C/C++,包括MSVC,可以开发出很漂亮的界面,但对个人却很难做到快速开发。这就需要有其他一些语言,和C/C++结转载 2013-12-31 00:24:06 · 5670 阅读 · 0 评论 -
C/C++函数指针(typedef简化定义)
转载于:http://blog.youkuaiyun.com/mnorst/article/details/8726204学习要点: 1,函数地址的一般定义和typedef简化定义; 2,函数地址的获取; 3,A函数地址作为B函数参数的传递; 函数存放在内存的代码区域内,它们同样有地址.如果我们有一个int test(int a)的函数,那么转载 2013-11-16 00:03:22 · 663 阅读 · 0 评论 -
C++ 与 字符编码格式
ASCII码是表示字符的基本编码,由于它是8位字节编码,只能表示256个字符。事实上在早期,ASCII是7位,英文的主要字符都小于128,后来扩展到8位,用大于128的编码表示特殊图形标记。当计算机进入中国后,面临汉字表示的问题,汉字的数目远大于256,于是中国制订GB2312编码。GB2312是一个兼容7位ASCII的变长字节编码格式。所谓变长是指英文字符仍然使用单字节表示,而中文使用双字转载 2013-06-29 12:12:52 · 2887 阅读 · 0 评论 -
C/C++程序员必须熟练应用的开源项目
作为一个经验丰富的C/C++程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实际的项目中应用过, 但是回过头仔细想想,其实以前自己写过的这些代码,只能是在特定的项目或者特定的环境中使用, 对于自己来说, 在不同的项目中应用, 只需要复制代码, 改改也就可以了, 因为自己写的代码自己很熟悉。转载 2013-05-30 08:42:10 · 864 阅读 · 0 评论 -
LIB和DLL的区别与使用
LIB和DLL的区别与使用共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。一种是LIB包含函数代码本身,在编译时直接将代码加入程序当中,称为静态链接库static link library。共有两种链接方式:动态链接使用动态链接库,允许可执转载 2013-04-18 11:01:00 · 741 阅读 · 0 评论 -
C++ 调用DLL 函数
为了使用方便,可以把一些函数(一些已实现的算法或者常用操作)打包成动态链接库(DLL)形式以供代码调用。调用DLL常用的有两种方式:隐式加载与动态加载。隐式加载将会把DLL中所有标识为_declspec(dllexport)的函数都加载,若遇到多个DLL,则一次性加载所有DLL会影响到效率,因此一般情况下使用动态加载。注意动态加载过后,需要释放加载的DLL。下面介绍动态加载DLL的方法:1原创 2013-04-15 16:39:43 · 1646 阅读 · 0 评论 -
Linux C多线程编程
直接上代码:/*thread.c*/==============================使用如下命令编译:gcc thread.c -o thread -lpthread==============================./thread执行,得到如下结果:This is func_1!This is func_1!This is func_1!This is func_1!Thi原创 2012-09-02 10:45:23 · 926 阅读 · 0 评论 -
Python创建二维数组
Python中,创建二维数组,本质上是创建一个list,而且这个list的元素还是list。可以用列表解析的方法实现。创建例子如下:def genMatrix(rows,cols): matrix = [[0 for col in range(cols)] for ro原创 2011-07-27 20:17:31 · 51851 阅读 · 1 评论