摘要:原作者:andrew peace
原文链接:asp">http://www.codeproject.com/cpp/pointers.asp
点击下载配套源代码
何为指针?
指针基本上和其它的变量一样,唯一的一点不同就是指针并不包含实际的数据,而是包含了一个指向内存位置的地址,你可以在这个地址找到某些信息。这是一个很重要的概念,并且许多程序或者思想都是将指针作为它们的设计基础,......
摘要:
const修饰指针和引用的用法,对于初学c++的人直是讳莫如深,不知所云.一旦你了解了其用法,一切便不值一哂了.下面我为读者一一释疑: 大致说来其可分为三种情况: const修饰指针,const修饰引用,const修饰指针的引用. 1.const修饰指针 const修饰指针又可分为三种情况: const修饰指针本身 const修饰指针所指的变量(或对象) const修饰指针本身和指针所指的变......
关键字static总结<第一次在CSDN写的,请大家指点点(错误和不足)>之一
static关键字如果不被引入c++语言,那就违反了c++设计中对低级语言设计支持规则中的”没有无故与c语言不兼容规则”,原因很简单,c语言中存在static并发发挥着它良好的作用,所以c++同样引入static应该是理所当然的,而实际c++的做法是不仅引入static,而且对它在面向对象java/j2me/code/ target=_blank>程序设计中进行扩充(导入静态数据成员与静态函数成员的概念),这就使static的概念得到了扩展,对于其中较新的静态成员变量(对象)与静态函数成员则应该重点更理解,下面分别从static的作用,在c++中的分类,以及一些比较典型的应用三个方面进行总结一下
首先,一个很明显的作用就是解决了全局部名字空间的问题,大家都知道全局变量是一处定义多处修改的,这当然是它的优势但,也确实解决了不少问题,但这对面向对象程序思想是相抵触的,它破坏的良好的封装性,污染了程序的名称空间,而对于这些缺点的,正是static能够解决的问题,我们可以在函数,结构,类中定义静态对象,当将变量定义为static时,编译器就会将变量的存储在程序的静态存储区(数据段)域而非普通的函数分配的栈空间上. 【程序编程相关:
WTL for MFC Programm】
一:静态(static)的作用 【推荐阅读:
WTL for MFC Programm】
二:静态(static)的分类 【扩展信息:
WTL for MFC Programm】
其次,static会将其修修饰的变量对象的可见性限制在本编译单元内(也就是后所以的具有文件作用域),使它成为一个内部连接.这与普通全局变量加入”extern”可以在多个文件中使用是相对应的.
目前在c++语言有五种静态对象的类别,分别为静态局部变量(对象),静态全局变量(对象),静态函数(静态全局函数),静态成员变量(对象),静态成员函数.
静态局部变量,静态全局变量,以及静态函数的存在是对c语言兼容的结果,静态员成员变量是在c++引入类之后相对应存在的概念,静态成员函数则是为保持类的封装的前提下对静态成员变量进行更好方法而引入的一相概念,所以说静态成员函数就目前来讲是所以静态对象(包括c++所有的静态变量与静态成员函数)中最晚一个引入c++语言的.
1. 静态局部变量(对象)
静态局部变量(对象)通也是指在函数中定义的静态变量(对象),当函数第一次被调用时,程序会为它在程序的数据段分配存储空间,并对它进行初始,当函数调用完成退出时, 这个变量(对象)会保存此次函数调用后的状态, 但不会被其它函数使用, 当再次调用该函数时, 并不为它分配空间与初始化,而是直接命使用上次调用的结果.看看下面简单的程序:
////////////////////////////////////////////////////////////////////////////////////////
#include <iostream>
#include <cstdlib>
using namespace std;
void foo(bool i)
{
static int a=0;
int c=0;
if(i){...
下一页 摘要:
基于pb的c/s两层结构向基于web分布式应用的平滑过度一、企业应用系统现状及发展趋势 1、应用现状目前大多数应用软件系统都是client/server形式的两层结构,应用安装并运行在客户端的计算机中,通过局域网或广域网连接与后台数据库服务器连接并共享数据,并把原始数据或处理后的数据存储在后台数据库中。2、发展趋势现在的软件应用系统正在向分布式的web应用发展;内部的和外部的用户都可以访问新的和......