C++
文章平均质量分 69
larry233
字节跳动数据库内核研发
本科专研图形学,自学无果,硕士转攻NLP,调参三年,中SCI,后学数据库,偶有所得,自撰一bug,卒。
展开
-
实习秋招C++知识点总结
实习/秋招时按自己需求总结的知识点,内容并不十分详细,建议选择性阅读。C++基础如何在main函数之前调用函数C语言,采用__attribute__关键字,void f()attribute((constructor))C++,构造函数构造的全局对象static和const的作用和区别static修饰变量,放在静态存储区,调用时返回的是上次改变之后的结果修饰函数,避免同名问题修饰成员变量,多个类的对象共有,且可在对象呗构造出来之前使用修饰成员函数,多个类的对象共有,且只能访问静.原创 2021-03-11 16:15:35 · 380 阅读 · 0 评论 -
剑指offer总结
本文是年初找实习时做的总结,为方便理解,建议读者先自行撸一遍剑指offer剑指offer刷题总结爬梯子,矩形覆盖(P10),实际上是斐波那契数列求前k大(P40),一半以上的数字(P39),中位数(P41),用快排:int Partition(vector<int> &nums, int start, int end){ int smaller = start - 1; for (int i = start; i != end; ++i) {.原创 2020-12-25 11:07:16 · 167 阅读 · 0 评论 -
粒子群算法(PSO)示例的C++实现
粒子群算法的介绍和原理见最优化算法之粒子群算法(PSO)优化目标函数如下:该目标函数可改为其他函数,设定的粒子数N=3,迭代次数400次,惯性因子ω=0.9,学习因子c=2,参数可调。使用C++优雅 实现该算法:#include <vector>#include <iostream>#include <cmath>#include <alg...原创 2019-10-29 16:08:56 · 2297 阅读 · 0 评论 -
Library string Type
The string type supports variable-length character strings.The library takes cares of managing memory associated with storing the characters and provides various useful operations.The library string ty原创 2016-05-23 18:36:37 · 401 阅读 · 0 评论 -
指向对象的指针
//以前学这些内容的时候觉得好难理解啊,现在再看这些知识点,实在轻松了不少,敲一遍博客,感觉理解更深了: ) 我们知道,对象一经声明就为对象的成员分配存储空间,并调用其构造函数进行初始化,对象生存期结束后自动调用其析构函数,并释放对象占用的内存空间。没有什么办法控制什么时候调用对象的构造函数,也没有办法决定什么时候释放对象占用的存储空间。如果在程序中需要使用许多对象,并且这些对象均占用大量存储空原创 2016-06-30 23:33:45 · 1241 阅读 · 0 评论 -
在函数中以数组作为形参的方法
本文介绍了三种在函数中以数组作为形参时的处理方法,重点介绍C++11标准是如何管理数组大小的。 数组的两个特殊性质对我们定义和使用作用在数组上的函数有影响,这两个性质分别是: 不允许拷贝数组以及使用数组时通常会将其转换成指针。因为不能拷贝数组,所以我们无法以值传递的方式使用数组参数。因为数组会被转换成指针,所以当我们为函数传递一个数组时,实际上传递的是指向数组首元素的指针。尽管不能以值传递的形式原创 2016-07-28 15:02:36 · 2833 阅读 · 0 评论 -
用sublime编译C++的方法
sublime代码高亮这么好看,怎么能不用sublime敲代码呢: ) 本人用的版本是sublime Text3中文版在网上查了查,自己的sublime现在也能编译C++了,设置步骤如下:1.找到自己的C++编译器版本我用的C++编译器是g++,是以前下codeblocks时顺带下的,g++.exe在F:\CodeBlocks\MinGW\bin目录下,如图: 2.将以上路径设置为环境变量原创 2016-07-28 15:47:25 · 2374 阅读 · 0 评论 -
VS中使用Github全图解
注:本文假设读者已经掌握Github的基本使用方法新建项目 如上图所示,以C++项目为例,创建项目时勾选右下角的两个选项。在介绍Github使用方法之前,先介绍下这两个选项的作用,熟悉这两点的同学可以直接跳过。为解决方案创建目录为解决方案创建目录是指生成项目目录,勾选该选项后,生成的目录结构如下图所示: Project1目录即包含代码的目录。如果没有勾选第一项,则生成的目录结构如下图所示:原创 2017-12-20 16:08:14 · 23431 阅读 · 2 评论 -
提取FBX文件中mesh的信息
Background由于毕设需要,最近在做FBX文件的解析工作,即解析由3dsmax导出的fbx文件模型,并在openGL中重新显示,到目前为止已经断断续续做了半个月了。根据我前期的调研来看,FBX SDK的官方文档的示例并不实用,此外,网上和FBX SDK相关的资料也不是很多。好在我还是在网上扒到了一些有用的信息,如这篇文章:How to Work With FBX SDK**,这篇文章对我的帮助原创 2017-12-29 23:50:10 · 11575 阅读 · 10 评论 -
使用FreeImage在OpenGL中生成图像贴图的方法
这是之前做本科毕设时碰到的问题,拖到现在才有时间整理,没想到一转眼已经在研究生实验室了,时间飞逝啊~言归正传,当时我需要在OpenGL中重绘FBX格式的三维模型,由于不同美工人员给人物模型贴的图可能是不同格式的,因此需要解析不同格式的贴图,然后将该贴图的长、宽以及像素信息传给OpenGL函数以供处理。三维模型常用的贴图格式有png、dds、tga、jpg、bmp等,这些图像格式所使用的协议...原创 2018-07-18 22:19:23 · 1469 阅读 · 0 评论 -
单实例对象类
在一些应用环境中只允许有一个对象实例,如一个部门的总负责人只允许有一人。 按照以上的定义方法,必须首先设计一个类,然后才声明这个类的对象。但是有了类之后,就可以声明多个对象实例,因为我们对声明对象实例的个数无法控制。 为控制对象实例的个数,可以在设计类时引入一个静态数据成员记录当前实例对象的个数,并让各个对象均共享这一计数器。//演示单实例对象类:class SINGLE{p原创 2016-06-25 23:03:02 · 550 阅读 · 0 评论 -
Library string type(2)——关于String的操作
关于string的定义,请参阅博文http://blog.csdn.net/larry233/article/details/51483827string的操作s.empty() //Returns true if s is empty,otherwise returns falses.size() //Returns numbers of characters of ss原创 2016-06-02 23:50:45 · 530 阅读 · 0 评论 -
判断一个数是否为素数
判断一个数n是否是素数,只需要判断它是否能被2到n之间的数整除就行了,若不能被整除,则说明是素数。考虑到某数大于n/2时,n不可能被该数整除,故只需遍历2~n/2即可。更进一步,由合数定理可知,若一个数是合数,则它的最小质因数必小于等于该数的平方根,由此可得更为高效的代码。/*代码如下*/#include<iostream>#include<cmath>using namespace std;原创 2016-01-05 01:17:17 · 756 阅读 · 0 评论 -
类模板的定义及其使用
本次引入类模板及其基本运算,为之后的一个关于栈的应用做铺垫。1.类模板的定义: 可用类模板来定义类,类模板是对象特性更为一般的抽象。简而言之,一个类模板就是一个抽象的类、类模板的一般定义形式为:template<参数名列表>class 类名{ //类的说明};其中,template是关键字,<参数名列表>中可以有多个参数,多个模板参数之间用逗号分隔。模板参数的形式可以原创 2016-03-26 11:23:30 · 2707 阅读 · 0 评论 -
求最大公因数的若干方法
题目:设计出求解两个整数m和n的最大公因数,记为(m,n)方法1:直接试探法 依次取2~min(m,n)中的每个数来判断是否同时是m和n的公因子,最后一个满足条件的数即为所求的最大公因数。若没有找到,则其最大公因子为1。 算法分析:由于要求最大公因数,不妨以函数求解。设函数为int hcf(int m,int n),则该函数应有返回值,此处记为h;由于不满足判断条件(即两数原创 2016-03-07 23:25:36 · 2481 阅读 · 0 评论 -
无责任共享 Coursera、Udacity 等课程视频
(本文是用 markdown 写的,访问 https://www.zybuluo.com/illuz/note/71868 获得更佳体验)程序语言interactivepython-003 Rice - An Introduction to Interactive Programming in Python 链接: http://pan.baidu.com/s/1kTJA0Er 密码: 9pdh (转载 2016-04-03 14:37:44 · 7362 阅读 · 5 评论 -
链表的定义及其基本运算
由于链表的描述比较复杂,故此处仅贴出代码,并附上本人遇到的部分问题,以供学习参考之用。#include<iostream>using namespace std;typedef struct tagNode{ int data; tagNode* next;}node;/*该结点可看成是**存放了数值域data和指针域next的递归定义的指针**原来的结点声明报错。出错原创 2016-04-21 15:11:50 · 415 阅读 · 0 评论 -
编译原理——词法分析器
1.词法分析器的主要工作 (1)从源程序文件中读入字符。 ( 2)统计行数和列数用于错误单词的定位。 ( 3)删除空格类字符,包括回车、制表符空格。 ( 4)按拼写单词,并用(内码,属性)二元式表示。 (属性值——token 的机内表示) ( 5)如果发现错误则报告出错 ( 6)根据需要是否填写标识符表供以后各阶段使用2.单词的基本分类 关键字:由程序语言定义原创 2016-05-30 17:41:52 · 2139 阅读 · 0 评论 -
链表的实现(类模板)
上一篇文章的链表实现有点小问题,此处使用类模板再做描述,不过部分代码有所不同。#include<iostream>#include<cstdlib>#include<cstdio>using namespace std;template<class T>class LinkList; //类的声明template<class T>class ListNode{ //由于结构体不原创 2016-04-22 15:27:16 · 1419 阅读 · 0 评论 -
Library vector Type
vector的定义 vector是C++标准库里最常用的容器,它之所以被称为容器,是因为它可以存放多个对象,所有在用一个容器中的对象都应该具有相同的类型。 vector也是一个类模板,这也是它能存放多种类型元素的原因。关于类模板的知识,请参考我的另一篇文章:初始化vectorvectorv1; // vector that holds objects of type T.原创 2016-06-02 23:54:16 · 365 阅读 · 0 评论