![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C和C++
文章平均质量分 81
gjy938815
这个作者很懒,什么都没留下…
展开
-
字对齐问题 .
看结构体和共用体部分的时候,遇到了一个新名词“内存对齐”。先引入问题。如下:1 struct student2 {3 char name[20];4 int age;5 char sex;6 char phone[15];7 };8 struct student p1; sizeof(p1)=? 这个很简单得出答案转载 2013-06-28 08:32:15 · 385 阅读 · 0 评论 -
调试信息的宏定义 .
#define debug(format, ...) NSlog(@"DEBUG[%s %s %d]: "format,__FILE__,__FUNCTION__,__LINE__,##__VA_ARGS__)#define info(format, ...) NSlog(@"INFO[%s %s %d]: "format,__FILE__,__FUNCTION__,__LINE__,##_转载 2013-09-20 09:49:51 · 554 阅读 · 0 评论 -
宏定义中的##操作符和... and _ _VA_ARGS_ _ .
http://www.cnblogs.com/pengyingh/articles/2407265.html1.Preprocessor Glue: The ## Operator预处理连接符:##操作符Like the # operator, the ## operator can be used in the replacement section of a f转载 2013-09-20 09:49:03 · 1064 阅读 · 0 评论 -
#,##讲解 .
转自http://www.cnblogs.com/mydomain/archive/2010/09/25/1834917.html#,##1、在一个预处理器宏中的参数前面使用一个#,预处理器会把这个参数转换为一个字符数组。(原文:When you put a # before an argument in a preprocessormacro, the p转载 2013-09-19 21:25:45 · 499 阅读 · 0 评论 -
c++ 三种继承(public protect private)
主要参考了下面的文章,根据它来谈谈自己的看法。参考文章:http://blog.sina.com.cn/s/blog_60cc33d70100xylq.html先贴张图:1. public继承 从语义角度上来说,public继承是一种接口继承(可以理解为子类对象可以调用父类的接口,也就有可能实现多态了) 从语法角度上来说,public继承后,关系见上图。很明转载 2013-09-05 15:52:30 · 570 阅读 · 0 评论 -
public protected private 成员函数和成员变量在public protected private 继承后访问权限问题
第一:private, public, protected 访问标号的访问范围。private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。举例如下:// public_protect_private.cpp : 定义控制台应用程序的入口点。// #include "stdafx.h"#include using names转载 2013-09-05 15:46:31 · 656 阅读 · 0 评论 -
友元函数和友元类 .
转自:http://www.cppblog.com/twzheng/articles/21020.html友元函数和友元类 采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元转载 2013-09-05 15:55:09 · 439 阅读 · 0 评论 -
关于C++中的友元函数的总结
1.友元函数的简单介绍1.1为什么要使用友元函数在实现类之间数据共享时,减少系统开销,提高效率。如果类A中的函数要访问类B中的成员(例如:智能指针类的实现),那么类A中该函数要是类B的友元函数。具体来说:为了使其他类的成员函数直接访问该类的私有变量。即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数。实际上具体大概有下面两种情况需要使用友元函数:(1)运算转载 2013-09-05 15:51:36 · 499 阅读 · 0 评论 -
C++用new和不用new创建类对象区别 .
起初刚学C++时,很不习惯用new,后来看老外的程序,发现几乎都是使用new,想一想区别也不是太大,但是在大一点的项目设计中,有时候不使用new的确会带来很多问题。当然这都是跟new的用法有关的。new创建类对象,使用完后需使用delete删除,跟申请内存类似。所以,new有时候又不太适合,比如在频繁调用场合,使用局部new类对象就不是个好选择,使用全局类对象或一个经过初始化的全局类指针似乎更加高转载 2013-09-04 21:33:32 · 458 阅读 · 0 评论 -
介绍一个线程封装类(CThread)
线程是编程中一个重要的概念。为了充分利用cpu,程序常采用多线程处理。操作系统与线程相关的函数皆为 c 函数接口。直接使用API生成和使用线程,不符合面向对象的处理逻辑。 本文介绍一个线程封装类CThread,这个类中封装了与线程相关操作。将线程封装成类后,线程也具有了对象的概念。线程就更加容易理解和使用。 与线程相关的操作有以下几个方面:1.线程的启动。2.线程的停止。3 线程的转载 2013-09-04 21:31:03 · 1581 阅读 · 0 评论 -
关于typedef的一些用法总结 .
不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的内容)。用途一:定义一种类型的别转载 2013-06-29 14:08:43 · 395 阅读 · 0 评论 -
C++中的构造函数小结
对象的初始化对象时类的实例,类是不占用空间的,对象是占用空间的。因为类是抽象的,不占用空间的,所以我们不能再定义类的时候对对象进行初始化操作的。但是,我们可以定义一个函数,在类实例化一个对象的时候,对对象赋初值,这个函数就叫做构造函数。构造函数是类在定义对象的时候,自动执行的对对象中的数据进行初始化操作的函数。构造函数的作用构造函数不同于其他的函数,不需要用户调用它(用户也转载 2013-09-05 19:56:36 · 452 阅读 · 0 评论