
class Solution {
public:
returnType function(paramType param) {
return returnType;
}
};
public:代表下面部分都是公共可见的
创建对象& 是一元运算符,返回操作数的内存地址,作为函数参数会自动传进去真正的变量,是实参(假如没有&则是形参)。
void test(int &x) {
x = 1024;
}
int main() {
int x = 666;
test(x);
printf("x = %dn",x); //1024
}
* 是一元运算符,返回操作数所指定地址的变量的值,作为函数参数,代表传进去的是指针。
void test(int *x) {
*x = 1024;// 修改x指针所指地址的值
}
int main() {
int y = 666;
int *x = &y;// 取y地址,赋值给x指针
test(x);
printf("x = %dn",*x); // 1024
}
数组创建
int a[3] = {0, 1, 2}; //大括号法只能声明时使用
int a[3]={0}; //正确,省略初始化最后一个元素,最后省略的元素初始化为0
int a[n]={0}; // 注意n必须为const类型,否则错误
char a[10] = "012345678"; //用一个字符串常量去初始化字符数组.注意: a[10]=' '
char a[10] = "0123"; //当字符常量长度不够时 数组的其他元素初始化为 ' '
int value[9][9] = {{1,1},{2}}; //value[0][0,1]和value[1][0]的值初始化,其他初始化为0
:: : . ->
::是作用域运算符,作用域可以是命名空间、类、结构。(前面没有则是默认域、全局)
:用于继承(类及方法)
->是指针指向其成员的运算符(前面是指向类、结构体、联合的指针)。
. 是结构体的成员运算符(前面是对象或结构体变量)。
vector
list
queue
stack
deque
priority_queue
set
multiset
map
multimap
常见的如下:
#include max(a,b) //返回a,b两者之间的较大值 max_element(a.begin(),a.end()) //返回数组r中[0, 6)之间的最大值的迭代器, //使用max_element返回的值减去数组头地址即为该最大值在数组的序号, //赋值输出记得加* reverse(str.begin(),str.end());//逆序(或反转),多用于字符串、数组、容器。 sort(a,a+10);//实现对数据的排序 //有三个参数,第一个参数first:是要排序的数组的起始地址。 //第二个参数last:是结束的地址(最后一个数据的后一个数据的地址) //第三个参数comp是排序的方法:可以是从升序也可是降序。 //如果第三个参数不写,则默认的排序方法是从小到大排序。 count(s.begin(),s.end(),'a'); //用来统计字符串中某个字符的个数 //使用方法是count(begin,end,‘a’),其中begin指的是起始地址, //end指的是结束地址,第三个参数指的是需要查找的字符。 #include算法模板#include isdigit(a);//只能判断字符型是否是数字 isalpha('a');//判断一个字符是否为字母 isalnum('a');//判断一个字符是否为数字或者字母 //也就是说判断一个字符是否属于a~z||A~Z||0~9 islower('a');//判断一个字符是否为小写字母,也就是是否属于a~z isupper('a');//判断一个字符是否为大写字母。 #include
#define _CRT_SBCURE_NO_DEPRECATE #include#include #include #include #include #include #include #include #include #include #include #include using namespace std; const int maxn = 110; const int INF = 0x3f3f3f3f;