文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>c++学习拾遗【一】

c++学习拾遗【一】

时间:2011-04-13  来源:

string s(“Hello”);

s.size()==6 string::size_type (unsigned type)

 

int *p1,*p2;

ptrdiff_t   n = p1 – p2;

#include<cstddef>

ptrdiff_t (signed int)

 

string s1,s2=”Hello”; // 字符串可以直接赋值

s1 = s2;

int ia[] = {0, 1, 2}; //数组不可以

int ia2[3];

ia2 = ia;

 

动态数组

size_t n = get_size();    //允许动态分配空数组

int* p = new int[n];

 

string *psa = new string[10];//分配了内存,初始化了元素

int *pia = new int[10]; //内置类型,分配了内存,不初始化元素 (所以const类型时则有错)

int *pia = new int[10](); // 要求编译器初始化

 

vector 下标类型 vector::size_type

string 下标类型 string::size_type

数组下标类型   size_t

 

C风格字符串

#include<cstdlib> 

int *pi = NULL C 风格

 

#incldue<cstring>

strlen(s) strcmp(s1,s2)….

char ca[] = {‘c’, ‘+’, ‘+’};

strlen(ca);//危险 strlen根据字符串结束符null来判断结尾

 

 

C++强制要求指向const对象的指针也必须具有const特性,但允许把非const对象的地址赋给指向const对象的指针。

const double pi = 3.14;

double *ptr = &pi; //错误

 

double dval = 3.14;

const double *cptr;

cptr = &dval //正确 所以可以个性const指针指向对象的值

 

 

 

 

自增操作区别

i ++; // 需要保存原来的i值

++ i; //所做的工作更少

 

vector<int> ivec;

int cnt = 10;

while(cnt>0)

   ivec.pust_back(cnt--);

vector<int>::iterator iter = ivec.begin();

while(iter != ivec.end())

cout << *iter++ <<endl;              // *iter++ ó *(iter++)

 

箭头操作符 ->

C++为在点操作符后使用的解引用操作定义的同义词.

(*p).foo; ó p->foo;

 

 

相关阅读 更多 +
排行榜 更多 +
方块枪战战场安卓版

方块枪战战场安卓版

飞行射击 下载
战斗火力射击安卓版

战斗火力射击安卓版

飞行射击 下载
空中防御战安卓版

空中防御战安卓版

飞行射击 下载