C++编程
文章平均质量分 60
lksodit_yiyi
这个作者很懒,什么都没留下…
展开
-
类的两个不同实例如何相互访问对方的成员变量
#include #include #include using namespace std;class Cat{private:int itsAge;public:void setAge(int a){itsAge=a;}void setAge(Cat another){itsAge = another.itsAge;};int getAg转载 2012-10-10 10:27:23 · 1798 阅读 · 0 评论 -
共享内容使用到的ftok()
系统建立IPC通讯(如消息队列、共享内存时)必须指定一个ID值。通常情况下,该id值通过ftok函数得到。ftok原型如下:key_t ftok( char * fname, int id )fname就时你指定的文件名(该文件必须是存在而且可以访问的),id是子序号,虽然为int,但是只有8个比特被使用(0-255)。当成功执行的时候,一个key_t值将会被返回,否则 -转载 2012-11-29 11:32:46 · 520 阅读 · 0 评论 -
C++继承:公有,私有,保护
公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被转载 2012-11-21 13:35:40 · 403 阅读 · 0 评论 -
c语言中逗号的作用
在C语言中,多个表达式可以用逗号分开,其中用逗号分开的表达式的值分别结算,但整个表达式的值是最后一个表达式的值。 假设b=2,c=7,d=5, a1=(++b,c--,d+3); a2=++b,c--,d+3; 对于第一行代码,有三个表达式,用逗号分开,所以最终的值应该是最后一个表达式的值,也就是d+3,为8,所以a1=8。 对于第二行代码,那么也是有三个表达式,这时的转载 2012-12-07 10:33:34 · 2685 阅读 · 0 评论 -
fork的用法实例
#include #include #include int main(){ fork(); fork() && fork() || fork(); fork(); while(1); return 0;}以上程序生成了多少个进程? 一开始我以为是2的5次方,即32个,后来发现错了,注意 && 运算符和||原创 2012-12-07 11:11:35 · 719 阅读 · 0 评论 -
malloc(sizeof(0))
malloc(sizeof(0))返回的是否是有效的指针,为什么?是有效指针,0是一个int类型的常量,所以sizeof(0)相当于sizeof(int),所以整个表达式相当于:malloc(sizeof(int));将分配一个int类型长度的空间,反回该空间的地址。转载 2012-12-07 10:24:03 · 715 阅读 · 0 评论 -
函数调用栈详解
我们用下面的代码来研究函数调用的过程。例 19.1. 研究函数的调用过程int bar(int c, int d){ int e = c + d; return e;} int foo(int a, int b){ return bar(a, b);} int m转载 2012-12-13 17:25:42 · 3191 阅读 · 0 评论 -
java中string与byte[]的转换
1.string 转 byte[]byte[] midbytes=isoString.getBytes("UTF8");//为UTF8编码byte[] isoret = srt2.getBytes("ISO-8859-1");//为ISO-8859-1编码其中ISO-8859-1为单字节的编码2.byte[]转stringString isoString = new转载 2013-01-11 10:12:17 · 1621 阅读 · 0 评论 -
JAVA里面关于byte数组和String之间的转换问题
<!--@page {margin:0.79in}p {margin-bottom:0.08in}-->JAVA里面关于byte数组和String之间的转换问题 把byte转化成string,必须经过编码。 例如下面一个例子: importjava.io.UnsupportedEncodingException; publicclass转载 2013-01-11 10:10:45 · 746 阅读 · 0 评论 -
for_each
Procedure Based與for_each()搭配 ///使用函数1.不傳入參數 1/* 2(C) OOMusou 2007 http://oomusou.cnblogs.com 3Filename : GenericAlgo_for_each_GlobalFunction.cpp 4Compiler : Visual C++ 8.0 / BCB 6.转载 2012-11-14 11:04:21 · 491 阅读 · 0 评论 -
Linux僵尸进程(Zombie process)
一、定义:什么是孤儿进程和僵尸进程 僵尸进程:一个子进程在其父进程还没有调用wait()或waitpid()的情况下退出。这个子进程就是僵尸进程。 孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。示例: 僵尸进程:一个子进程在其父进程还没有调用转载 2012-11-28 13:22:36 · 591 阅读 · 0 评论 -
智能指针(SP,WP)的使用条件
要使用智能指针(SP,WP)来管理类的对象,要满足两个条件:1. 这个类必须是Refbase的子类或者间接子类。2. 这个类要定义虚析构函数: virtual ~MyClass()为何要定义虚析构函数呢? 目的是在父类指针引用子类对象的情况下,如果父类定义了虚析构函数,那么在delete父类指针时,就会先调用子类的析构函数,然后再依次调用父类的析构函数,否则的话,delete 父类指原创 2012-11-26 17:25:37 · 643 阅读 · 0 评论 -
静态内部类的几点描述(Java/C++)
1. 静态内部类可以有静态成员,也可以有非静态成员。2. 静态内部类可以访问顶层类的静态成员。3. 静态内部类不可以访问顶层类的非静态成员。4. 非静态内部类不能有静态成员。5. 非静态内部类可以访问顶层类的任何成员。6. 非静态内部类可以访问相同顶层类下的任何静态内部类的静态成员,包括静态私有成员,通过.来访问。7. 非静态内部类可以访问相同顶层类下的任何静态内部类的非静原创 2012-08-21 15:06:03 · 871 阅读 · 0 评论 -
实例化一个类的对象时的执行顺序
下面这个小程序,你能把结果做对吗? 我就做错了,对实例化对象时的执行顺序有些生疏了,希望以后杜绝类似的疏忽。--Book.java:import java.io.IOException;public class Book { Book(int marker) { System.out.println("Book(" + marker + ")"); } pu原创 2012-09-25 16:27:00 · 5751 阅读 · 1 评论 -
静态内部类
这篇文章对 "静态内部类" 分析的比较清楚了,转载自http://blog.csdn.net/fgakjfd/article/details/5282646如果你不需要内部类对象与其外围类对象之间有联系,那你可以将内部类声明为static。这通常称为嵌套类(nested class)。Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实转载 2012-08-21 14:49:07 · 431 阅读 · 0 评论 -
hashmap: 散列码和数组索引
看了这篇文章, 可以了解 散列码和数组索引还不是一回事, 在hashmap中hashcode要先经过运算得到一个h,然后h&(length-1),这样才得到数组索引. 什么是hashcode 分析HashMap之前先介绍下什么Hashcode(散列码)。它是一个int,每个对象都会有一个hashcode,它在内存的存放位置是放在对象的头部(对象头部存放的信息有hashcode转载 2012-08-30 17:14:09 · 2342 阅读 · 0 评论 -
try、catch、finally的执行顺序
这个小程序的打印结果是什么? 还好我做对了, 不过借此也复习一下try、catch、finally的执行顺序 import java.io.IOException;public class ExceptionTest { class MyException extends Exception{ } String sf1() {原创 2012-09-25 16:59:42 · 857 阅读 · 0 评论 -
为什么匿名内部类参数必须为final类型
转载自http://www.cnblogs.com/leier/archive/2012/03/30/2424841.html 1) 从程序设计语言的理论上:局部内部类(即:定义在方法中的内部类),由于本身就是在方法内部(可出现在形式参数定义处或者方法体处),因而访问方法中的局部变量(形式参数或局部变量)是天经地义的.是很自然的2) 为什么JAVA中要加上一条限制:只能访问fi转载 2012-08-21 16:11:11 · 774 阅读 · 0 评论 -
sp<> 强指针类的用法
文一:转:http://wangjun-1985.spaces.live.com/blog/cns!E9070276AAF56C8E!472.entry在android 中可以广泛看到的template class Sp 句柄类实际上是android 为实现垃圾回收机制的智能指针。智能指针是c++ 中的一个概念,因为c++ 本身不具备垃圾回收机制,而且指针也不具备构造函数和析构函数,所以为转载 2012-10-18 15:48:47 · 18765 阅读 · 1 评论 -
sp<> wp<>
Android中定义了两种智能指针类型,一种是强指针sp(strong pointer),另外一种是弱指针(weak pointer)。其实称之为强引用和弱引用更合适一些。强指针与一般意义的智能指针概念相同,通过引用计数来记录有多少使用者在使用一个对象,如果所有使用者都放弃了对该对象的引用,则该对象将被自动销毁。弱指针也指向一个对象,但是弱指针仅仅记录该对象的地址,不能通过弱指针来访问该对象,转载 2012-10-18 16:06:23 · 4881 阅读 · 0 评论 -
【java】Windows7 下环境变量设置
Windows 7下配置JDK环境变量参数设置:1. 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为:D:\Program Files (x86)\Java\jdk1.6.0_252. 安装完成后,右击“我的电脑”,点击“属性”,单击“高级系统设置”,点击“环境变量”,如图:4. 在“系统变量”中,设置3项属性,JAVA_HOME,PA转载 2013-05-07 10:03:24 · 1013 阅读 · 0 评论