源码
// 08Const.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "iostream.h"
//1. const & parameter
void fun(int* p1,const int* p2)
{}
//问题:两个参数暗含什么含义?
//2. const function member
class Test
{
int i;
public:
void fun1() const
{
int m = i;
}
void fun2()
{
i++;
}
};
//问题:上例中,fun1修饰为const,含义是?fun2可以修饰为const吗?
int main(int argc, char* argv[])
{
printf("Hello World!\n");
return 0;
}
问题:两个参数暗含什么含义?
p1指向一个普通整型变量,p2指向一个常整形变量
问题:上例中,fun1修饰为const,含义是?fun2可以修饰为const吗?
含义是这个函数体不会引起其他变量的改变。fun2不能。const修饰的成员函数不能修改任何的成员变量。const成员函数不能调用非onst成员函数,因为非const成员函数可以会修改成员变量。