1.指针的一些基础语法没搞清楚。很丢人
int *pi; //1
*pi=5; //2
int iv3=999;
pi=&iv3; //3
const double di; //4
分析:第2句不对,因为pi指针只声明了,但是没有初始化,没有定义这个指针所指向的地址,给它赋值是错误的,因为赋的值不知道该放到哪里去。第3句是对的,将iv3的地址赋给pi,&是取地址符。第4句不对。const常量声明时必须同时初始化。
2.this指针
#include <iostream>
using namespace std;
class Point{
public:
Point(){
cout<<this<<endl;
cout<<this+1<<endl;
cout<<this-1<<endl;
};
};
int _tmain(int argc, _TCHAR* argv[])
{
Point a;
cout<<&a<<endl;
return 0;
}
输出:0012FF63
0012FF64
0012FF62
0012FF63
this指针只有在成员函数中才有定义。