c++笔记3
一基本语法:
1.1 字符串:支持标准C的 const char* pch=0/"";//不指向任何对象和指向空字符串。C++提供的string类可提供字符串的所有操作,最好是融合操作,string str; const char *pc = "a character array"; str=pc;//先后关系很重要,这里是将C字符串扩展至C++类型
;C++串向C串转化必须用显示函数const char *str = s1.c_str(); :
1.1.1判断空:if ( st.empty() ) 或者if ( ! st.size() )
1.1.2赋值:直接用赋值“=”或者初始化时的拷贝string st3( st );
1.1.3判断相等、字符串拼接等直接用== += + + +等
1.1.4字符串中的字符替代:用迭代器replace( str.begin(), str.end(), '.', '_' );
1.2向量vector:有2种用法分别是数组习惯和 STL 习惯 :
1.2.1数组用法:vector< int > ivec( 10, -1 ); //相当于int ivec[10]={-1};或者另一种初始化方法:int ira[10]={0,-1,-2,-3,-4,-5,-6,-7,-8,-9}; vector< int > ivec(ira,iar+10 );或者直接用另个向量赋值本向量;
1.2.2STL用法:
vector< string > text; //空Vector
string word;
while ( cin >> word ) {
text.push_back( word );//添加元素个数和内容
// ...
}
cout << "words read are: \n";
for ( vector<string>::iterator it = text.begin();//迭代器输出,it为指针类型。
it != text.end(); ++it )
cout << *it << ' ';
cout<<endl;
1.3复数(通过操作符重载支持加减乘除,用cout输出时是"(a+bi)"格式:如a+bi,complex< float /double/long double > purei( a, b ); complex< float > real_num(a ); //虚部为0 complex< float > zero; zero//0,
1.4位操作bitset:#include <bitset> 支持将某一位/全部置位、清零、翻转、读某位、判断某位是否为0,二进制字符串赋值、转字符串和转long型整数等。
1.5 pair类型:类似于创造键值对
typedef pair< string, string > Authors;
Authors proust( "marcel", "proust" );
Authors joyce( "james", "joyce" );
Authors musil( "robert", "musil" );
1.6链接指示符 extern “C” :告诉链接器后面的语言是用某种语言编写的,单一语句一般放在头文件中。
1.7 函数的指针和指向函数的指针数组:typedef 返回值类型 (*pfuntypedef)(参数列表), ppfuntypedef funarry[]={fun1,fun2}
相关文章
- 清华大学C++课程学习笔记——第四章 类和对象(2)结构体、联合体、枚举类
- c++ 使用 vcpkg
- 《C++游戏开发》笔记十一 平滑动画:不再颤抖的小雪花
- VC++笔记七
- C++│蓝桥杯省赛真题油漆面积问题
- Visual C++ 开发从入门到精通
- C++内存管理
- C++学习笔记_20 适配器容器-priority_queue 2021-05-19
- C++字符串常用函数操作
- 传智播客 C/C++学习笔记 内存四区模型
- 传智播客 C/C++学习笔记 数组和指针的关系, 字符串学习
- 学习C++笔记133
- C/C++求职宝典21个重点笔记(常考笔试面试点)
- C++ Primer 学习笔记_98_特殊的工具和技术 --优化内存分配
- hashtable C++实现
- 深入探索C++对象模型
- C++文件读写详解(ofstream,ifstream,fstream)
- c/c++字符串处理大集合
- 6.C++初步分析类
- 【课堂笔记】C++程序设计- 第一章-绪论
- c++ 实现 http 上传和下载
- C++MFC编程笔记day03 MFC工具栏、状态栏、视图窗口
- C++windows内核编程笔记day14 其他线程同步技术