revision #2: 修改文件名

This commit is contained in:
Changkun Ou
2018-04-09 14:47:43 +02:00
parent dccc61c7a7
commit 02a1105512
12 changed files with 0 additions and 79 deletions

View File

@@ -1,30 +0,0 @@
//
// 2.4.cpp
// c++1x tutorial
//
// created by changkun at changkun.de
//
// 区间迭代
#include <iostream>
#include <vector>
int main() {
int array[] = {1,2,3,4,5};
for(auto &x : array) {
std::cout << x << std::endl;
}
// 传统 C++ 写法
std::vector<int> arr(5, 100);
for(std::vector<int>::iterator i = arr.begin(); i != arr.end(); ++i) {
std::cout << *i << std::endl;
}
// C++11 写法
// & 启用了引用, 如果没有则对 arr 中的元素只能读取不能修改
for(auto &i : arr) {
std::cout << i << std::endl;
}
return 0;
}

View File

@@ -1,49 +0,0 @@
//
// 2.3.cpp
// c++1x tutorial
//
// created by changkun at changkun.de
//
// auto/decltype/尾返回类型/返回类型推导
#include <iostream>
// 传统 C++
template <typename R, typename T, typename U>
R add1(T x, U y) {
return x+y;
}
// 尾返回类型
template <typename T, typename U>
auto add2(T x, U y) -> decltype(x+y) {
return x+y;
}
// C++14 返回类型推导
template <typename T, typename U>
auto add3(T x, U y) {
return x+y;
}
int main() {
auto i = 5;
int arr[10] = {0};
auto auto_arr = arr; // 正确,对整个类型进行推导
// auto auto_arr2[10] = arr; // 错误, 无法推导数组元素类型
auto x = 1;
auto y = 2;
decltype(x+y) z1;
//auto z2; // 错误, 无法推导
std::cout << add1<int, int, int>(1,1) << std::endl;
std::cout << add1<int, int>(1,1) << std::endl;
std::cout << add1<int, int>(1,1) << std::endl;
return 0;
}