文章分类 -  C++

摘要:1. 二进制十进制之间的互相转换【1】1.1 二进制数转换成十进制数由二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。[例1105] 把二进制数110.11转换成十进制数。1.2 十进制数转换为二进制数十进制数转换为二进制数... 阅读全文
posted @ 2014-06-11 16:43 金石开 阅读(2331) 评论(0) 推荐(0) 编辑
摘要:Please refer to:std::string::find()和std::string::npos (http://blog.sina.com.cn/s/blog_49370c500100ov3k.html)int idx = str.find("abc");if (idx == string::npos)...上述代码中,idx的类型被定义为int,这是错误的,即使定义为 unsigned int也是错的,它必须定义为 string::size_type。npos 是这样定义的:static constsize_type npos = -1;因为 string:: 阅读全文
posted @ 2014-02-12 15:29 金石开 阅读(853) 评论(0) 推荐(0) 编辑
摘要:1.typedef和define的作用域Refer to:http://blog.sina.com.cn/s/blog_70ec9a6f01014mqs.htmltypedef:如果放在所有函数之外,它的作用域就是从它定义开始直到文件尾;如果放在某个函数内,定义域就是从定义开始直到该函数结尾;#define:不管是在某个函数内,还是在所有函数之外,作用域都是从定义开始直到整个文件结尾。如:typedef …//此处开始到文件结尾#define …//此处开始到文件结尾int negate(int num){…typedef …//此处开始到该函数结束。注意,该函数内,此定义前,也不能用#def 阅读全文
posted @ 2013-10-09 17:13 金石开 阅读(487) 评论(0) 推荐(1) 编辑
摘要:1. 怎样在一个程序运行后面运行另一个程序?Refer to:http://campus.chsi.com.cn/xy/com/200812/20081203/11208458.html 1、 在一个程序里面运行另一个程序的最简单的方法是把它们依次列入一个批处理文件(扩展名为。BAT的文件),在执行该批处理文件时,其中所列程序就会自动运行。 在C或DOS中,都没有一种特定的方法来完成“在一个程序结束后运行另一个程序”这样一种函数调用。然而,C提供了两组函数,它们允许一个程序随时可以运行另一个程序,而后者的运行将结束前者的运行。如果你将这样的函数调用放在第一个程序的末尾,就能达到上述目的。C.. 阅读全文
posted @ 2013-10-09 16:53 金石开 阅读(2583) 评论(0) 推荐(1) 编辑
摘要:有下面的一个简单的类:class CNullPointCall{public: static void Test1(); void Test2(); void Test3(int iTest); void Test4();private: static int m_iStatic; int m_iTest;};int CNullPointCall::m_iStatic = 0;void CNullPointCall::Test1(){ cout << m_iStatic << endl;}void CNullPointCall::Test2(){ ... 阅读全文
posted @ 2012-11-30 12:19 金石开 阅读(153) 评论(0) 推荐(1) 编辑
摘要:先看一个classclassa{public:staticFunctionA(){menber=1;}private:intmenber;}编译上述代码,出错。原因很简单大家都知道,静态成员函数不能访问非静态成员,这是因为静态函数属于类而不是属于整个对象,静态函数中的 member可能都没有分配内存。静态成员函数没有隐含的this自变量。所以,它就无法访问自己类的非静态成员。(看过一篇很好的文章《浅析C++中的this指针》介绍这个方面的详细内容)那要想访问怎么办呢?地球人都知道只要将:intmenber;//changethelineaboveto:staticintmenber;但是这个方 阅读全文
posted @ 2012-11-30 12:05 金石开 阅读(339) 评论(1) 推荐(1) 编辑

点击右上角即可分享
微信分享提示