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++笔记3的更多相关文章
- git-简单流程(学习笔记)
这是阅读廖雪峰的官方网站的笔记,用于自己以后回看 1.进入项目文件夹 初始化一个Git仓库,使用git init命令. 添加文件到Git仓库,分两步: 第一步,使用命令git add <file ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- SQL Server技术内幕笔记合集
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnbl ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- NET Core-学习笔记(三)
这里将要和大家分享的是学习总结第三篇:首先感慨一下这周跟随netcore官网学习是遇到的一些问题: a.官网的英文版教程使用的部分nuget包和我当时安装的最新包版本不一致,所以没法按照教材上给出的列 ...
- springMVC学习笔记--知识点总结1
以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
随机推荐
- linux 进程学习笔记-进程调度
在分时系统中,系统将CPU时间划分成无数个时间片(quantum)分配给不同的进程,一个时间片只执行一个进程,并且不停地切换,以让用户感觉到各个进程是在“同时运行”,这中间所需要的策略和算法便是进程调 ...
- xxx referenced from: xxx in xxx.o
情形一:可能是有一些源码文件没有加入工程所导致的,找到相应的.h和.m文件,将其add进入项目工程即可解决这种问题. 情形二:也有可能是某些framework没有加入项目中, 示例: Undefi ...
- WebSocket的C++服务器端实现
由于需要在项目中增加Websocket协议,与客户端进行通信,不想使用开源的库,比如WebSocketPP,就自己根据WebSocket协议实现一套函数,完全使用C++实现. 代码已经实现,放在个人g ...
- 重学JAVA基础(五):面向对象
1.封装 import java.util.Date; public class Human { protected String name; protected BirthDay birthDay; ...
- snmp++开发实例一
1.官网下载 snmp开发,首先需要机器已经安装了snmp服务,这方面的资料网上比较完备,安装的时候注意每少一个文件,网上都可以下载到,这样可以自己形成一个包,供以后使用.只要最后snmp的服务开启就 ...
- poco时间操作
Poco::DateTime Poco::Timespan Poco::Timestamp 时间操作 Poco::DateTime dt; //c++ 20才有 Calendar dt = dt + ...
- simple demo of Handlebars.js & jquery.js
simple demo of Handlebars.js & jquery.js <html> <head> <script src="jquery-1 ...
- 原生JS中unshift与shift
shift() 方法:shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值:用法:arrayObject.shift()如果数组是空的,那么 shift() 方法将不进行任何操作 ...
- 【技巧】断点调试你的express项目
目录(?)[-] 写在前面 node-inspector 全局安装node-inspector 以debug模式开启express服务 启动node-inspector 调试NodeJS程序 写在 ...
- [xdoj1233]Glory and LCS
题意:求两个排列的最长公共子序列n<=1e5 解题关键:转化为LIS. 最长公共子序列 的 nlogn 的算法本质是 将该问题转化成 最长增序列(LIS),因为 LIS 可以用nlogn实现,所 ...