Keep It Simple, Stupid

新博客网址:http://ningto.com

C++类和接口的设计原则探讨

我这篇文章的主旨是介绍一部分类和接口的高质量设计的准则。这些准则不但应该保证设计并且实现的类或者接口本身有高质量代码,而且更重要的是在工业领域应该尽可能的使代码的更新和维护不影响客户的活动,主要也就是保持二进制代码兼容(binary compatibility)和源代码兼容(source co...

2012-08-20 22:13:56

阅读数 624

评论数 0

boost::filesystem获取目录下的所有文件名

#include namespace fs = boost::filesystem; int get_filenames(const std::string& dir, std::vector& filenames) { fs::path path(dir); if (!f...

2012-08-19 22:05:32

阅读数 9034

评论数 1

boost::asio阻塞等待与异步等待

阻塞等待:这里会等待3秒然后才进行输出。 #include #include #include int main(void) { boost::asio::io_service io; boost::asio::deadline_timer timer(io, boost::posi...

2012-08-19 21:33:57

阅读数 5899

评论数 0

boost daytime client/server

客户端连上服务器后, 服务器会返回一个当前日期时间给客户端。 // client.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #inc...

2012-08-19 21:02:29

阅读数 1002

评论数 0

boost::format, std::stringstream

stringstream完全适用, boost::format感觉代码可读性不好,可能还不习惯吧 #include #include #include #include int _tmain(int argc, _TCHAR* argv[]) { std::string st...

2012-08-19 20:59:16

阅读数 1284

评论数 0

boost function bind用法

#include #include #include #include using namespace boost; void ShowValue(const std::string &value) { std::cout << "t...

2012-08-19 20:57:59

阅读数 2082

评论数 0

boost::shared_ptr与std::tr1::shared_ptr

从命名空间可以看出一个是boost的,另一个是tr1的,当然tr1也是从boost中移植过来的,在Windows中需要安装vs2008+sp1补丁才能支持。 智能指针,它们功能一样,都有引用计数的功能,即智能指针被拷贝后会增加引用计数,这样就不用担心之前的智能指针销毁资源而导致拷贝后的智能指针不...

2012-08-19 20:56:36

阅读数 2378

评论数 0

boost::noncopyable

禁止拷贝 有些类我们不希望被拷贝和赋值(如单例模式),这时候只要将其拷贝构造和 赋值操作符声明为private即可,boost提供了一种更简洁的写法,只要继承自boost::noncopyable即可。 class Widget : boost::noncopyable { };...

2012-08-19 20:55:08

阅读数 1592

评论数 0

Windows下boost安装

1.下载boost Windows版,如:boost_1_48_0; 2.运行boostrap.bat,会生成bjam.exe; 3.运行bjam.exe(时间会比较长),会生成一个stage目录里面包含了所有新生成的lib文件; 4.工程属性里面需要包含目录boost_1_48_0,以及库...

2012-08-19 20:38:40

阅读数 2445

评论数 0

linux到windows移植

windows下一般建的是控制台应用程序,由于使用的库都是跨平台库的,所以移植起来也比较轻松。 问题:msvcprtd.lib(MSVCP90D.dll) : error LNK2005: "public: __thiscall std::basic_string 解决方法(...

2012-08-16 08:10:51

阅读数 4213

评论数 0

utf8与ansi之间的转换

// file.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #include #include #include #include ...

2012-08-16 08:08:44

阅读数 7256

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭