int const A::func() { return 0; }int A::func() const { return 0; } 上面的代码是合法的,其中A::func成员函数[只能在成员函数后面加上const修饰符]是一个重载成员函数,两个函数都返回int类型数据(注意:对于C/C++,返回类型或参数类型中,const int和int被认为是一种类型.但是const int *和int *不是一种类型),这两个重载函数正是基于函数名后的const来重载的.    int const fun…
第一个const 函数的返回值类型是const. 这个const修饰没什么意义,你可以想象一下: 既然是函数的 返回值,而且是值传递的形式,是否const有什么意义.如果指针(引用)传递,怎表示返回值的内容不可修改:一般用在赋值操作中,例: const A& operator =() { ... }第二个const修改函数的输入参数,这样可以提高效率.如:用实参b调用const int func(const int& b) const时,将跳过调用的过程(不复制函数),而直接运行它的内容.…
http://blog.csdn.net/zhangheng837964767/article/details/33783511 关键问题点:const 属于修饰符 ,关键是看const 修饰的位置在那里1.const int *a这里const 修饰的是int,而int定义的是一个整值因此*a 所指向的对象 值 不能通过 *a 来修改,但是 可以重新给 a 来赋值,使其指向不同的对象eg:       const int *a = 0;       const int b = 1;      …
来源:https://blog.csdn.net/zhangheng837964767/article/details/33783511 关键问题点:const 属于修饰符 ,关键是看const 修饰的位置在那里1.const int *a这里const 修饰的是int,而int定义的是一个整值因此*a 所指向的对象 值 不能通过 *a 来修改,但是 可以重新给 a 来赋值,使其指向不同的对象eg:       const int *a = 0;       const int b = 1;  …
首先注意,const int * p 和int const *p 是一样的,并且不管是不是*p,即使const int i和int const i也是一样的,所以我们接下来只讨论int const * p和int * const p的不同 对于这种问题,我们只用将const 的位置固定,然后再看后面的东西,一般规则是后面的东西不能在进行赋值或者修改.例如下面: #include<stdio.h> int main(int argc,char *argv[]) { int i = 10; int…
public class Test{ //中间变量 private String res = "0"; //方法 public int func(int i){ if(i>0){ int temp = i%10; res = res+String.valueOf(temp); func(i/10); } return Integer.valueOf(res); } public static void main(String[] args){ Test t=new Test();…
本文只是一篇学习笔记,是看了<彻底搞定C指针>中的相关篇幅后的一点总结,仅此而已! 一.先搞清const int *p与int const *p的区别 它们的区别就是:没有区别!! 无论谁在前面都没有影响!所以const int *p与int const *p用法一样! 二.const int *p的用法 #include <stdlib.h> #include <stdio.h> #include <string.h> int main(int argc,…
C++ char*,const char*,string,int 的相互转换   1. string转const char* string s ="abc";const char* c_s = s.c_str(); 2. const char*转string    直接赋值即可 const char* c_s ="abc";string s(c_s);  3. string转char* string s ="abc";char* c;consti…
看例子: int sloth = 3; const int *p1 = &sloth; int * p2 const = &sloth; 这样申明的话,不允许使用p1来修改sloth的值,但是p1可以指向其他的地址: 可以利用p2修改sloth的值,但是p2不允许指向其他地址. 第二个例子: 1. int gorp = 16; int chips = 12; const int *p_snack = &gorp *p_snack = 20; (X) p_snack = &c…
char & operator[](int i);const char & operator[](int i);/*const char & operator(int i);*/编译出错:error C2556: 'const char &MyString::operator [](int)' : overloaded function differs only by return type from 'char &MyString::operator [](int…