p27variadic-template


不定模版参数

template <class T1, class... args>
void test(T1 t, args&... arg){

}
test(1,2,'a','c'); 

auto

list<string> c;
auto ite = find(c.begin(), c.end(),traget);
//auto声明变量的时候必须就赋值
auto ite; //这行和下一行是不对的
itr = find(c.begin(), c.end(),traget);

or
list<string>::interate ite = find(c.begin(), c.end(),traget);

ranged-base for

for (decl:coll){
    statement
}
for(auto elem:vec){ //这每个拿出来赋值到左边
    // 右边是容器,左边是输出的每个数
    cout << elem << endl;
}
//用引用也行
for(auto& elem:vec){
    // 右边是容器,左边是输出的每个数
    cout << elem << endl;
}

for (int i:{1,2,3,4,5}){
    cout << i;
}

传引用和传value是相同的signature

signature指的是除了返回值类型的余下部分
double image(const double& in) const {}
double image(const double in) const {}

上面两个是相同的,不能同时存在

notes:image() 后的const也是signature的一部分,
double image(const double& in) const {}
double image(const double in) {}

这样是可以共存的


Author: Moule Lin
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint polocy. If reproduced, please indicate source Moule Lin !
  TOC