C++
猫十一.
在校研究生一枚
展开
-
C++ 单例模式(Meyer‘s Singleton)实现
Scott Meyers 在 Effective C++ 的 Item 4: Make sure that objects are initialized before they’re used 里面提出了一种利用 C++ 的 static 关键字来实现的单例模式,这种实现非常简洁高效,它的特点是,仅当程序第一次执行到 GetInstance 函数时,执行 instance 对象的初始化.class Singleton{public: static Singleton& Instanc原创 2022-04-13 23:34:12 · 2301 阅读 · 0 评论 -
c++利用数组递归构建二叉树
1 #include<iostream>2 #include<vector>3 #include<queue>4 5 using namespace std;6 struct TreeNode{7 int val;8 TreeNode *left;9 TreeNode *right;10 TreeNode() : val(0), left(nullptr), right(nullptr) {}11 TreeNod原创 2022-04-13 23:16:20 · 1598 阅读 · 0 评论 -
面试常用排序算法
冒泡排序//每次循环确定末尾值//时间复杂度O(n²)//空间复杂度O(n)class Solution {public: vector<int> bubbleSort(vector<int>& nums) { int n=nums.size(); for(int i=0;i<n-1;i++) { for(int j=0;j<n-i-1;++j) {原创 2022-03-04 23:51:00 · 371 阅读 · 0 评论 -
Linux下c++程序编译流程解析及静、动态库的创建和使用
C++程序编译流程预编译这个过程主要是处理源代码中以#开头的预编译指令,比如#include,#define等#-o 选项指定生成的文件g++ -E hello.cpp -o hello.i编译这个过程就是把预编译完的文件进行词法分析、语法分析、语义分析及优化后生成相应的汇编代码#直接编译上步生成文件或源文件都可g++ -S hello.i -o hello.sg++ -S hello.cpp -o hello.s汇编这个过程就是把汇编代码转换成机器码g++ -c he原创 2021-12-16 16:04:55 · 1900 阅读 · 0 评论 -
C++ Primer 习题(第五章附答案)
练习5.1 什么是空语句?什么时候会用到空语句? 空语句是最简单的语句,空语句由一个单独的分号构成。如果在程序的某个地方,语法上需要一条语句但是逻辑上不需要,此时应该使用空语句,空语句什么也不做。 一种常见的情况是,当循环的全部工作在条件部分就可以完成时,我们通常会用到空语句。使用空语句时最好加上注释,从而令代码的阅读者知道这条语句是有意省略内容的。练习5.2 什么是块?什么时候会用到块? 块是指用花括号括起来的语句和声明的序列,也称为复合语句。一个块就是一个作用域,在块中引入的原创 2021-04-23 19:46:20 · 617 阅读 · 0 评论 -
C++ Primer 习题(第四章附答案)
练习4.1 表达式5+10*20/2的求值结果是多少?#include<iostream>using namespace std;int main(){ cout << 5 + 10 * 20 / 2 << endl; return 0;}练习4.2 根据4.12节中的表,在下述表达式的合理位置添加括号,使得添加括号后运算对象的组合顺序与添加括号前一致。#include<iostream>#include<vector>#原创 2020-12-30 23:07:52 · 2232 阅读 · 1 评论 -
C++ Primer 习题(第三章附答案)
练习3.1 略练习 3. 2 编写一段程序从标准输入中一次读入一整行,然后修改程序使其一次读入一个词。#include <iostream>#include<string>using namespace std;//使用getline一次读入一整行,回车结束int main(){ string line; cout << " please enter your line ,even space" << endl; while (get原创 2020-12-21 10:40:17 · 4105 阅读 · 0 评论 -
C++实现创建通讯录管理系统
#include<iostream>#include<string>#define max 1000using namespace std;//菜单界面void showmenu(){ cout << "****************************" << endl; cout << "***** 1.添加联系人 *****" << endl; cout << "***** 2.显原创 2020-12-13 19:03:45 · 586 阅读 · 3 评论 -
C++ Primer 习题(第二章附答案)
练习2.1 类型int、long、long long 和short 的区别是什么?无符号类型和带符号类型的区别是什么?float 和double的区别是什么? 在C++语言中,int、long、long long 和short都属于整型,区别是C++标准规定的尺寸的最小值不同。其中,short 是短整型,占16位;int是整型,占16位;long 和long long均为长整型,均为长整形,分别占32位和64位。 大多数整型都可以划分为无符号类型和带符号类型,在无符号类型中所有比特都用来存储数值,但是仅原创 2020-12-04 15:28:52 · 3516 阅读 · 3 评论 -
C++基础入门(黑马程序员C++教程笔记)
前言: 配套视频: https://www.bilibili.com/video/BV1et411b73Z 为方便学习,在此发布C++基础入门部分配套讲义,原作者为黑马程序 C++基础入门 1 C++初识 1.1 第一个C++程序 编写一个C++程序总共分为4个步骤 创建...转载 2020-11-26 15:17:38 · 5600 阅读 · 6 评论 -
C++ Primer 习题(第一章附答案)
练习1.1-1.2 略练习 1.3 编写程序,在标准输出上打印 hello,world。#include <iostream>using namespace std;int main(){ cout << "hello ,world" << endl; return 0;}练习1.4 我们的程序使用加法运算符+来将两个数相加。编写程序使用乘法运算符*,来打印两个数的积。#include<iostream>using namespac原创 2020-12-01 12:25:21 · 589 阅读 · 0 评论