
c++
文章平均质量分 52
蘑菇ding
这个作者很懒,什么都没留下…
展开
-
C++ 运算符重载
C++中预定义的运算符的操作对象只能是基本数据类型,实际上,对于很多用户自定义类型,也需要有类似的运算操作。例如:class complex{public: complex(double r=0.0,double I=0.0){real=r;imag=I;} void display();private: double real; double imag;};com......原创 2022-06-16 18:03:58 · 2532 阅读 · 0 评论 -
effective C++(一)
条款 1: 尽量用 const 和 inline 而不用#define (尽量用编译器而不用预处理)#define 经常被认为好象不是语言本身的一部分。这是问题之一。再看下面的语句:#define ASPECT_RATIO 1.653编译器会永远也看不到 ASPECT_RATIO 这个符号名,因为在源码进入编译器之前,它会被预处理程序去掉,于是 ASPECT_RATIO 不会加入到符号列表中。如......翻译 2022-06-16 17:56:09 · 137 阅读 · 0 评论 -
C++知识积累(持续)
C++ 基础知识积累原创 2022-06-16 17:55:30 · 146 阅读 · 0 评论 -
菲波那切数列求余数
问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。 输出格式 输出一行,包含一个整数,表示Fn除以10007的余数。样例输入10样例输出55样...原创 2022-06-16 17:51:29 · 302 阅读 · 0 评论 -
C++ string类
Iterators:#include <iostream>#include <string>using namespace std;//begin: Returns an iterator pointing to the first character of the string.//end : Returns an iterator pointing ...原创 2018-05-14 20:53:25 · 281 阅读 · 0 评论 -
C++ vector
std::vectortemplate < class T, class Alloc = allocator<T> > class vector; // generic templatevector是同一种类型的对象的集合,是代表可以改变大小的数组的顺序容器。就像数组一样,vector为它们的元素使用连续的存储位置,也就是说它们的元素也可以通过指向其的常规指针上的偏移量进行...原创 2018-05-22 15:20:49 · 735 阅读 · 0 评论 -
C++ 基础题(一)
输入格式:Xi’an Institute of Posts and Telecommunications is co-designed and implemented by the People’s Government of Shaanxi Province and the Ministry of Industry and Information Technology. The Institu...原创 2018-05-27 09:55:34 · 1492 阅读 · 0 评论 -
对称二叉树(给定一个二叉树,检查它是否是镜像对称的。)
例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3说明:如果你可以运用递归和迭代两种方法解决这个问题,会很加分。递归实现cl...原创 2018-09-10 16:06:45 · 1120 阅读 · 0 评论 -
二叉树的最大高度
/*给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。*///递归/*递归class Solution {public: int maxDepth(TreeNode* root) { if (root == NULL) return 0; int max_left = maxDept...原创 2018-09-10 16:46:32 · 1020 阅读 · 0 评论 -
iterator (C++)
<iterator>是C++标准程序库中的一个头文件,定义了C++ STL标准中的一些迭代器模板类,这些类都是以std::iterator为基类派生出来的。迭代器提供对集合(容器)元素的操作能力。迭代器提供的基本操作就是访问和遍历。迭代器模拟了C++中的指针,可以有++运算,用*(解引用算符,deference)或->算符来访问容器中的元素。容器中元素如果改变了所用内...原创 2018-05-07 09:11:53 · 2132 阅读 · 0 评论 -
句柄
https://blog.youkuaiyun.com/kiss0kill/article/details/641691所谓句柄实际上是一个数据,是一个Long (整长型)的数据。句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。 从上面的定义中的我们可以看到,...转载 2018-05-07 08:44:14 · 861 阅读 · 0 评论 -
2017阿里巴巴实习生笔试题(含答案)2
1关于c++的inline关键字,以下说法正确的是(定义在Class声明内的成员函数默认是inline函数)使用inline关键字的函数会被编译器在调用处展开:使用 inline 关键字的函数只是用户希望它成为内联函数,但编译器有权忽略这个请求头文件中可以包含inline函数的声明:头文件中不仅要包含 inline 函数的声明,而且必须包含定义,且在定义时必须加上 inline 。【关键字 inl...原创 2018-05-06 16:52:30 · 2974 阅读 · 0 评论 -
C++ 数据输入输出 数据输入输出流
常用IO流类库操纵符// iostream_test.cpp: 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <iomanip>using namespace std;int main(){ /*提取空白符 char ch[10]; cin ...原创 2018-04-24 21:18:13 · 382 阅读 · 0 评论 -
C++ 知识点小结(一)
https://blog.youkuaiyun.com/bian_qing_quan11/article/details/70788312 一、变量初始化四种方式int a=0;int a(0);int a={0};int a{0};后边两种属于列表初始化方式,不允许信息丢失,比如 double值初始化int变量二、类型转换C++ 四种强制类型转换操作符:static_cast、dynamic_cas...转载 2018-04-24 21:27:59 · 211 阅读 · 0 评论 -
牛客网--动态规划(C++) 合唱团
有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积吗?#include<iostream>#include <algorithm>#include <vector>#include <climits>...原创 2018-05-09 15:36:59 · 762 阅读 · 0 评论 -
C++ 模板类和类模板
为什么要使用类模板?实例化后的两个模板类复用了相同的数据结构算法,但是却可以操作不同类型的数据元素,这就是类模板的好处。 在C++的Template中很多地方都用到了typename与class这两个关键字,有时候这两者可以替换,那么这两个关键字是否完全一样呢? 事实上class用于定义类,在模板引入c++后,最初定义模板的方法为:template<class T>,这里c...转载 2018-05-09 19:43:53 · 643 阅读 · 0 评论 -
C++ 笔试题整理
1、假设CThing是一个类,执行以下这些语句之后,在内存中会创建多少个CThing的对象?代码如下:CThing a(); CThing b(2);CThing c[2];CThing &test = b;CThing d = b;CThing *m_p = c;CThing *m_q = new CThing(4); 题目解析:CThing a(); /*这里需要看清楚,在这并不是...原创 2018-05-09 20:55:44 · 424 阅读 · 0 评论 -
C++ 容器(一)C++标准模板库(STL)和容器
(1)C++标准模板库 与 C++标准库的关系 C++标准模板库其实属于C++标准库的一部分,C++标准模板库主要是定义了标准模板的定义与声明,而这些模板主要都是类模板,我们可以调用这些模板来定义一个具体的类;使用STL不需要自己手动创建一个函数模板或者是类模板,这些模板都定义在标准模板库中,我们只需要学会怎么使用这些类模板来定义一个具体的类,然后能够使用类提供的各种方法来处理数据。(2)STL...转载 2018-05-03 15:51:01 · 319 阅读 · 0 评论 -
C++ 容器(三)关联容器
关联容器set, multiset, map, multimap 是一种非线性的树结构,具体的说采用的是一种比较高效的特殊的平衡检索二叉树—— 红黑树结构。因为关联容器的这四种容器类都使用同一原理,所以他们核心的算法是一致的,但是它们在应用上又有一些差别,先描述一下它们之间的差别。(1)set ,又称集合,实际上就是一组元素的集合,但其中所包含的元素的值是唯一的,且是按一定顺序排列的,集合中的每个...转载 2018-05-03 15:56:58 · 300 阅读 · 0 评论 -
友元函数和友元类
友元函数的引入:类的主要特点之一是信息隐藏和封装,即类的私有成员(或者保护成员)只能在类定义的范围内使用,只允许本类的成员函数来调用,但是有时候也需要在类外引用私有成员(或者保护成员);那么问题就是如何在不放弃私有成员(或者保护成员)的数据安全性的情况下,可以允许一个普通函数或者另一个类的成员函数来使用这个类的私有成员(或者保护成员);C++引入了友元 (包括友元类和友元函数)-------提供了...原创 2018-05-05 15:33:49 · 622 阅读 · 0 评论 -
c++ 不可见字符表示:转义字符
\a07响铃\n0A换行\t09水平制表符\v0B垂直制表符\b08退格\r0D回车\f0C换页\\5C字符‘ \ ’\"22双引号\'27单引号\?3F问号原创 2018-04-24 21:12:49 · 2482 阅读 · 0 评论