随笔分类 -  编程语言

软件设计的七大原则
摘要:设计模式遵循的一般原则: 1.开-闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开发,对修改关闭.说的是,再设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展.换言之,应当可以在不必修改源代码的情况下改变这个模块的行为,在保持系统一定稳定性的基础上 阅读全文
posted @ 2017-02-15 00:41 默默淡然 阅读(924) 评论(0) 推荐(0) 编辑
com组件接口
摘要:int main( int argc, char *argv[] ) { cout << "Initializing COM" << endl; if ( FAILED( CoInitialize( NULL ))) { cout << "Unable to initialize COM" <&l 阅读全文
posted @ 2016-10-01 14:11 默默淡然 阅读(10308) 评论(0) 推荐(0) 编辑
发布一个C++版本的ORM库SmartDB
摘要:先简单说说ORM的优点: SmartDB基础库 java和c#中有很多ORM框架,如c#中的entity framework、Linq to Sql、NHibernate等,java中有Hibernate、Mybatis等等,其它各种开源的ORM库多如牛毛。这应该得益于托管语言在这方面的优势。然而, 阅读全文
posted @ 2016-08-25 10:09 默默淡然 阅读(1845) 评论(0) 推荐(0) 编辑
C++UI框架
摘要:WTL都算不上什么Framework,就是利用泛型特性对Win API做了层封装,设计思路也没摆脱MFC的影响,实际上用泛型做UI Framework也只能算是一次行为艺术,这个思路下继续发展就会变得没法用了,比如 代码过于复杂,编译太慢,出错不好调试等问题难以解决。 而且封装得也不完全,还是随处可 阅读全文
posted @ 2016-08-22 11:41 默默淡然 阅读(7093) 评论(0) 推荐(0) 编辑
UNICODE串转换成char类型串的四种方法
摘要:1. 调用 WideCharToMultiByte() API int WideCharToMultiByte ( UINT CodePage, //1 Unicode编码的字符页,Unicode编码有字符页的概念,比如gb2312/936,big5/950等 DWORD dwFlags, //2  阅读全文
posted @ 2016-08-12 15:38 默默淡然 阅读(5342) 评论(0) 推荐(0) 编辑
C++ Java C#泛型
摘要:泛型概述C#中的泛型C#泛型和java泛型的比较C#泛型和C++模板的比较C#泛型中的约束 泛型概述 Bruce Eckel :您能对泛型做一个快速的介绍么? Anders Hejlsberg : 泛型其实就是能够向你的类型中加入类型参数的一种能力,也称作参数化的类型或参数多态性。最著名的例子就是L 阅读全文
posted @ 2016-07-30 18:33 默默淡然 阅读(709) 评论(0) 推荐(0) 编辑
C语言基本数据类型简介
摘要:1.概述 C 语言包含的数据类型如下图所示: 2.各种数据类型介绍 2.1整型 整形包括短整型、整形和长整形。 2.1.1短整形 short a=1; 2.1.2整形 一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的 阅读全文
posted @ 2016-07-29 13:16 默默淡然 阅读(326) 评论(0) 推荐(0) 编辑
虚函数&纯虚函数&抽象类&虚继承
摘要:C++ 虚函数&纯虚函数&抽象类&接口&虚基类 1. 多态 在面向对象语言中,接口的多种不同实现方式即为多态。多态是指,用父类的指针指向子类的实例(对象),然后通过父类的指针调用实际子类的成员函数。 多态性就是允许将子类类型的指针赋值给父类类型的指针,多态是通过虚函数实现的。 多态可以让父类的指针有 阅读全文
posted @ 2016-07-25 09:43 默默淡然 阅读(3020) 评论(0) 推荐(0) 编辑
指针的各式定义
摘要:1,一个整形数: int a; 2,一个指向整形数的指针: int *a; 3,一个指向指针的指针,它指向的指针指向一个整形数: int **a; 4,一个有10个整形数的数组: int a[10]; 5,一个有10个指针的数组,每个指针指向一个整形数: int *a[10]; 6,一个指向有10个 阅读全文
posted @ 2016-07-19 14:49 默默淡然 阅读(484) 评论(0) 推荐(0) 编辑
C++多重继承二义性解决
摘要:1. 什么是多重继承的二义性 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 class A{ public: void f(); } class B{ public: void f(); void g(); } class C:public A,public B{ p 阅读全文
posted @ 2016-07-17 16:50 默默淡然 阅读(3256) 评论(0) 推荐(0) 编辑
值得学习的C语言开源项目
摘要:- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行 阅读全文
posted @ 2016-07-17 12:38 默默淡然 阅读(13508) 评论(1) 推荐(6) 编辑
2015年你需要学习的15种编程语言
摘要:如果你是一个程序员,那么你的美好时光来了。根据美国劳动统计局的预测,计算机方面的工作岗位将在接下来的七年时间里增长8%。如果你很擅长于写代码,那么你的薪资可以高达300美元一小时甚至更多。想要拿到这一领域的高薪,那么你就得掌握最需要的几门编程语言。 下面是Doug Winnie——在线学习平台Lyn... 阅读全文
posted @ 2015-10-26 16:43 默默淡然 阅读(289) 评论(0) 推荐(0) 编辑
数据库编程总结
摘要:数据库编程总结当前各种主流数据库有很多,包括Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCESS等等。数据库... 阅读全文
posted @ 2015-10-21 11:27 默默淡然 阅读(1685) 评论(0) 推荐(0) 编辑
大数据导入Excel
摘要:在平时的项目中,将数据导出到Excel的需求是很常见的,在此对一些常见的方法做以总结,并提供一种大数据量导出的实现。OLEDB 使用OLEDB可以很方便导出Excel,思路很简单,处理时将Excel当做Access处理,利用SQL建表、插入数据。不多说了,直接看代码 使用OLEDB导出Excel... 阅读全文
posted @ 2015-10-21 00:19 默默淡然 阅读(1645) 评论(0) 推荐(0) 编辑
导出Excel
摘要:通过VC实现对Excel表格的操作的方法有多种,如:通过ODBC数据库实现,通过解析Excel表格文件,通过OLE/COM的实现。本文主要研究通过OLE/COM实现对Excel表格的操作。本文源码的应用环境说明:Windows XP SP3Microsoft Visual Studio 2010Mi... 阅读全文
posted @ 2015-10-21 00:09 默默淡然 阅读(421) 评论(0) 推荐(0) 编辑
建造模式
摘要:一个人活到70岁以上,都会经历这样的几个阶段:婴儿,少年,青年,中年,老年。并且每个人在各个阶段肯定是不一样的呀,我觉得可以说世界上不存在两个人在人生的这5个阶段的生活完全一样,但是活到70岁以上的人,都经历了这几个阶段是肯定的。实际上这是一个比较经典的建造者模式的例子了。1.初识建造者模式建造者模... 阅读全文
posted @ 2015-05-13 13:54 默默淡然 阅读(376) 评论(0) 推荐(0) 编辑
C实现类封装、继承、多态
摘要:1、 概述C语言是一种面向过程的程序设计语言,而C++是在C语言基础上衍生来了的面向对象的语言,实际上,很多C++实现的底层是用C语言实现的,如在Visual C++中的Interface其实就是struct,查找Interface的定义,你可以发现有这样的宏定义:#ifndef Interface... 阅读全文
posted @ 2015-03-04 09:57 默默淡然 阅读(7767) 评论(1) 推荐(0) 编辑
运算符重载详解
摘要:1.运算符重载定义:C++中预定义的运算符的操作对象只能是基本数据类型。但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作。这时就必须在C++中重新定义这些运算符,赋予已有运算符新的功能,使它能够用于特定类型执行特定的操作。运算符重载的实质是函数重载,它提供了C++的可扩展性,也是C+... 阅读全文
posted @ 2015-03-03 19:27 默默淡然 阅读(21731) 评论(0) 推荐(3) 编辑
类定义 对象数组
摘要:1.类定义;2.对象数组#includeusing namespacestd;class myfoo{private:intnum;string foostr;public:myfoo(inta,std::string&str):num(a),foostr(str){cout<<"myfoo con... 阅读全文
posted @ 2015-03-03 16:56 默默淡然 阅读(1281) 评论(0) 推荐(0) 编辑
C++ Operator Overloading
摘要:一、重载规则I.可以重载的操作符+-*/%^&|~!=>>>==*,->[]()operator newoperator new[]operator deleteoperator delete []II.不能重载的操作符::..*? :sizeoftypeidnewdeletestatic_cast... 阅读全文
posted @ 2015-02-26 13:00 默默淡然 阅读(359) 评论(0) 推荐(0) 编辑