C++
edoge
这个作者很懒,什么都没留下…
展开
-
进行一个C++的学(07-数组
数组与容器的区别是,数组的大小确定不变,不能随意增加元素。 声明一个数组: int arr1[] = {1,2,3}; const int arr2Size = 10; int arr2[arr2Size]; arr2 = arr1; // 不可以,数组不允许拷贝 char arr3[5] = "hello"; // 不可以,字符串最后会有一个\0空字符 char arr3[6] = "hello"; // 这是含有10个整型指针的数组 int* parray[10]; /原创 2021-08-27 11:48:17 · 85 阅读 · 0 评论 -
进行一个C++的学(06-迭代器iterator
迭代器提供了对对象的间接访问, 通过begin和end来获取指向第一个元素的迭代器和尾后迭代器 通过 * 解引来获取迭代器所指的元素 使用递增++来向后移动迭代器 使用迭代器将一个string容器中的字母都变成大写: string res = ""; vector<string> strV = { "asax", "basd", "cdf", "dasdts", "easdxc" }; for (auto s = strV.begin(); s != strV.end();s+原创 2021-08-25 14:58:03 · 77 阅读 · 0 评论 -
进行一个C++的学(05-vector
vector(容器)表示对象的集合,其中所有对象的类型都相同、 vector是一个类模板 vector的操作和string相似,不写了 vector<int> intV1 = { 1,2,3,4,5 }; vector<int> intV2(10); vector<int> intV3(5, 12); intV3.push_back(174); cout << intV3[5] << endl; cout <<原创 2021-08-25 13:50:37 · 54 阅读 · 0 评论 -
进行一个C++的学(04-string
使用string类型必须包含string头文件。 #include <string> using std::string; 直接初始化和拷贝初始化 如果使用等号初始化变量实际上是拷贝初始化,编译器把等号右侧的初始值拷贝到新创建的对象中去。如果不使用等号,则是直接初始化。 // 拷贝初始化 string s1 = "it's a string"; // 直接初始化 string s2("it's a string"); 读写string对象 string s;原创 2021-08-25 13:35:18 · 42 阅读 · 0 评论 -
进行一个C++的学(03-类型别名、auto和decltype
定义类型别名的两个方式 // integer 是 int 的同义词,intp 是int* 的同义词 //using integer = int; //using intp = int*; typedef int integer, * intp; integer i = 1; intp p = &i; cout << "value of i: " << i << endl; cout << "value of p: " <&l原创 2021-08-25 10:44:45 · 57 阅读 · 0 评论 -
进行一个C++的学(02-const
const限定符用来定义一个常量。试图为常量赋值的行为都将引发错误。 cosnt对象一旦创建后其值就不能再改变,所以const对象必须初始化。 默认情况下const对象仅在文件内有效,如果想让const在文件间共享,在定义时添加extern关键字。 ...原创 2021-08-24 15:54:13 · 55 阅读 · 0 评论 -
进行一个C++的学(01-引用与指针
1. 引用 引用并非对象,相反的,它只是为一个已存在的对象所起的另外一个名字。 对引用的修改也会作用于引用绑定的对象 #include<iostream> using namespace std; int main() { // 创建一个变量i的引用 iReference //int i = 12; //int& iReference = i; int i = 12, & iReference = i; cout << "value of i原创 2021-08-24 10:29:45 · 53 阅读 · 0 评论