c++
文章平均质量分 67
DreamSoar
这个作者很懒,什么都没留下…
展开
-
C++ primer 第五版 第一部分 部分习题答案
1.11 #include #include using namespace std;int main(int argc, char *argv[]){ int v1 = 0, v2 = 0, min = 0, max = 0; cin>>v1>>v2; if(v1 > v2){ min = v2;max = v1;}else{min = v1;max = v2;}do{cout原创 2014-08-08 00:10:02 · 833 阅读 · 0 评论 -
Incomplete type与Foreward declaration
http://blog.csdn.net/tonywearme/article/details/8136530 有时我们在编程时会遇到一些与类型不完整有关的编译器报错,此时我们往往只是简单的把它改成相应的完整类型定义,也没空去想为什么会报错,还有没有其他更好的解决方法;还有,很多人会一上来不管三七二十一把所有可以包含的头文件都包含一遍,确保编译通过。而很多时候,使用一个自定义类型转载 2015-08-13 18:14:15 · 357 阅读 · 0 评论 -
C++ 模版注意事项
摘抄自 C++ primer 第五版 582页 《模版编译》 ------------------------------------------------------------------- 1、当编译器遇到一个模版定义试,它并不生成代码。只有当实例化出模版的一个特定版本时,编译器才生成代码。 2、当我们调用一个函数时,编译器只需要掌握函数的声明。当我们使用一个类类型对象时,类原创 2015-06-15 16:40:39 · 349 阅读 · 0 评论 -
C++ 自定义事件机制
由于项目中要做到解耦,所以需要用到事件机制。 但是这个事件机制没有解决类成员函数的的问题。 类成员函数的解决在下一篇。 -------------------------------------------------------------------------- 代码如下: global.h #pragma once #include "myevent.h" type原创 2015-06-15 11:13:30 · 1527 阅读 · 0 评论 -
C++模板实现事件处理器中的“通用成员函数指针”的调用(一)
http://blog.chinaunix.net/uid-790245-id-2037517.html 我最近在实现一个事件处理器,应用到了一种“通用成员函数指针的注册”,先声明,这个名词是我给起的,不过我觉得并不充分恰当,但也想不出什么更好的词,看完下面的介绍,也考考您,看这玩意叫个啥比较合适。 先说需求:这个事件处理器需要在捕获一个事件后,调用已注册的处理函数。看起来很普转载 2015-06-12 18:14:35 · 517 阅读 · 0 评论 -
C++模板实现事件处理器中的“通用成员函数指针”的调用(三)
http://blog.chinaunix.net/uid-790245-id-2037519.html 书接上文。上篇的最后,提到了事件注册程序存在的风险,现在让我们来着手解决吧! 首先,我们来分析一下风险形成的原因: Step 1. 声明类A的成员函数指针,并让它指向类A的一个成员函数 Step 2. 将类B实例的指针强制转化为类A的指针,并通过它来调用类A的成员函转载 2015-06-12 18:16:06 · 631 阅读 · 0 评论 -
C++模板实现事件处理器中的“通用成员函数指针”的调用(二)
http://blog.chinaunix.net/uid-790245-id-2037518.html 上一篇的最后,好像缺了点东西,呵呵,看来我还得给他补上。您有没有发现FuncItem有点问题吗?谁来给成员handler赋值呢?交给构造函数吧,改造后的FuncItem如下: template typename T> class FuncItem : public F转载 2015-06-12 18:15:24 · 317 阅读 · 0 评论 -
一般函数指针和类的成员函数指针
转载请注明原文网址: http://www.cnblogs.com/xianyunhe/archive/2011/11/26/2264709.html 函数指针是通过指向函数的指针间接调用函数。函数指针可以实现对参数类型、参数顺序、返回值都相同的函数进行封装,是多态的一种实现方式。由于类的非静态成员函数中有一个隐形的this指针,因此,类的成员函数的指针和一般函数的指针的表现形式不转载 2015-06-12 13:59:37 · 299 阅读 · 0 评论 -
C/C++中关于struct内存对齐问题
http://blog.163.com/liurong063327@126/blog/static/864037152011914105819906/ 就这篇写的清晰明了。做如下总结: 1、对齐值如何计算 ① 如果没有指定对齐值,则对齐值为成员变量中最大的那个值。 ② 如果指定的对齐值(#pragam pack(value)// 2,4,6,8....),则对齐值为转载 2015-05-25 23:28:24 · 1163 阅读 · 0 评论 -
C++中如何在一个构造函数中调用另一个构造函数
http://blog.chinaunix.net/uid-23741326-id-3385581.html 在C++中,一个类的构造函数没法直接调用另一个构造函数,比如: 点击(此处)折叠或打开 #ifndef _A_H_ #define _A_H_ #include stdio.h> #include new> cl转载 2015-06-08 17:55:24 · 955 阅读 · 0 评论 -
C++实现事件机制
http://blog.csdn.net/linzhengqun/article/details/1913236 http://www.cppblog.com/weiym/archive/2013/01/31/197649.html 委托是一种很实用的设计方法,一个模块可以将某些事情委托给其他实体去做,而对于模块本身不需要知道受委托的实体是什么,它只知道这个实体遵循某种接口规转载 2015-06-03 13:53:09 · 1770 阅读 · 0 评论 -
C/C++ 练习题及答案
1、利用指针编写交换两个整型变量值的函数。程序的运行结果如下:输入:5,6 输出:6,5 注释:网上很多写法都是交换变量的内容,现在提供一个写法交换地址的。 #include #include int changeInt(int** source, int** dest) { int ret = 0; if (source == nullptr || dest == null原创 2015-01-20 18:26:46 · 1164 阅读 · 0 评论 -
C++ 自定义事件机制2
eventdispatcher.h #pragma once #include #include #include "myevent.h" #include #include "eventitemh.h" #include using namespace std; template class EventDispatcher { typedef void(T::*EventFun原创 2015-06-16 08:59:14 · 2238 阅读 · 0 评论 -
MakeFile 固定格式编写
#关联.c和.o 配合 .c.o: 一起使用 .SUFFIXES: .c .o #定义使用的编译器 CC=gcc #定义编译器参数 PARAM=-Wall -g #定义源文件 \ 换行 SRCS=test1.c #让源文件的.c 就是目标文件的.o OBJS=$(SRCS:.c=.o) #生成的最终文件 EXE=s1 #定义target 和 依赖,依赖于.o文件 生成可执行文件 \原创 2015-04-23 14:50:56 · 320 阅读 · 0 评论 -
C++ primer 第五版 第三部分 部分习题答案(暂停更新....)
13.1原创 2014-11-29 17:49:32 · 446 阅读 · 0 评论 -
C++ primer 第五版 第二部分 部分习题答案
8.1 #include #include #include using namespace std; istream &f(istream &i) { string s; while(i>>s){ cout<<s<<" "; } i.clear(); return i; } int main(int argc, char *argv[]) {原创 2014-08-24 17:41:11 · 1313 阅读 · 0 评论 -
C++ 类 互相包含的问题研究
问题: 在一个项目中有两个类 A 和 B ,分别对应 四个 文件 A.h, A.cpp, B.h, B.cpp。内容如下: A.h #pragma once #include "B.h" class A { public: A(); ~A(); int mI; int f(); B* b; }; B.h #pragma once #include "A.h" c原创 2015-08-13 18:36:03 · 356 阅读 · 0 评论