![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c/c++
文章平均质量分 51
buptwxt
做一个独立思考的人
展开
-
来自北邮人论坛 C++常量问题
http://bbs.byr.cn/#!article/CPP/75464#include using namespace std; int main(){ const int b = 10; const int &c = b; //b的引用。 unsigned d = (unsigned)(&b); int *p = (int转载 2014-10-03 08:50:52 · 555 阅读 · 0 评论 -
c++初始化列表
1、初始化列表比起在构造函数中赋值效率要高,成员为非内置类型时,直接调用拷贝构造函数;赋值方式会调用默认构造函数,再赋值;2、常量成员,引用类型, 没有默认构造函数的类对象必须使用初始化列表原创 2015-03-30 19:41:34 · 345 阅读 · 0 评论 -
C中的字符串和字符数组
C中并没有真正的字符串的概念,字符串常量其实是没有名字的字符数组的简写,编译器会在末尾加入\0,可以使用sizeof测试长度,strlen不会计算\0。char *pchar = "hello";char str[]="hello";数组就是靠指向数组的首地址来操作,str被弱化为一个指针,因此上面两种方式都是合法char str[5];str="hello";不合法原创 2015-04-01 09:40:19 · 401 阅读 · 0 评论 -
c++类设计思考
1、是否需要构造函数2、数据成员函数是否需要是私有,对外隐藏3、是否需要一个无参构造函数 class Point; Point going[10];4、构造函数是否需要初始化所有成员5、需要析构函数吗 成员是new的对象时6、需要一个虚析够函数吗。一个父类指针指向一个子类对象,delete该指针时,需要对父类定义一个虚析构函数7、是否需要复制构造函数和定义赋值操作符 构造原创 2015-04-01 11:09:29 · 443 阅读 · 0 评论 -
c++ 代理类 copy clone
在容器中同时存放基类和代理类会存在问题 会缺失数据容器中存放基类的指针 1、内存管理的负担 2、 要操作元素,必须知道对象的静态类型copy clone诞生基类中诞生一个纯虚函数和虚析构函数定义一个行为与父类对象相似,而又潜在的表示所有继承自父类对象的类,该类的对象就是代理。复制代理就会复制相应的对象,给代理赋新值也会删除旧对象,再复制新对象。代理类中有原创 2015-04-01 12:21:28 · 734 阅读 · 0 评论 -
c++ 仿函数
类似于func()这样调用的方式,但不是函数调用的东西。例如:重载了()的对象函数指针对象成员函数指针stl中使用了大量的仿函数作为参数原创 2015-04-11 19:11:57 · 437 阅读 · 0 评论 -
宏展开中含有#或者##
#include #define f(a,b) a##b#define g(a) #a#define h(a) g(a) int main(){ printf("%s\n", h(f(1,2))); printf("%s\n", g(f(1,2))); return 0;}宏展开中含有#或者##那么久不回展开参原创 2015-04-18 00:08:29 · 453 阅读 · 0 评论 -
字符创去除首尾空格,合并串中的多个空格为一个空格
void EraseMultiSpace(std::string &str){bool alnumFlag = false;bool spaceFlag = false;int j=0;int j=0;for (int i=0; i{if(!isspace(str.at(i))){ str.at(j) = str.at(i);j++;alnu原创 2015-06-26 16:34:53 · 939 阅读 · 0 评论