个人进步之路

记录点点滴滴进步

  • 博客(63)
  • 资源 (120)
  • 收藏
  • 关注

原创 继承体系下析构函数的顺序

~原地出向量(){去重(们);}//多一步,//继承类. ~出向量(){转文件(们,出);}//基类,且未加虚未加虚仍然是先从子类析构,再是基类,这样可以在子类中附加操作.

2020-07-31 21:33:25 325

原创 不是用继承,而是用插件

构 原地出向量:公 出向量{// 可串构(原地出向量);//用这个 空 切换(串&b){ 出=b;清理(们); 如(存在(b))文件名向量(b,们); }//如果这里改成模板参数,则别人继承你,则又要改,这是不行的.};像策略类的的主机类,那些都是大类,构造时加模板参数?用插件,却又不好修改插件内容....

2020-07-31 17:04:56 211

原创 关于模式与策略

其实策略这个玩意.可以这样理解:我把我的类,分拆为几个大类.然后方便管理.或者我给我的这几个大类,搞个规定.或者叫弄个抽象类,这样.我想替换他时,直接换个另外的具体类,当然这个具体类继承抽象类.可以不用先想什么策略.只是先尽量拆分大类.到时候替换时,就可以分拆出来了.弄个接口.继承并实现他就完了.抽象工厂用于晓得具体要生产哪些产品时有用.工厂主要也是,先有个基类,后面再产生.先注册,后使用.访问者主要是想利用别人的一些接口达到自己想要的功能而已.观察者主要就是订阅/发布模式.大概就这几样吧

2020-07-30 18:53:07 267

原创 dmd一个小示例,不带运行时

/*dmd % -defaultlib=*/extern(C) int printf(const char*, ...);interface I { int omg();}class A : I { int omg() { return 12; }}class B : A { override int omg() { return 34; }}template New(T) { pragma(mangle, "_D" ~ T.mangleof[1

2020-07-30 11:06:29 306

原创 dub的sdl配置文件中文帮助

DUB软件包根文件夹应包含有构建/部署元信息的dub.sdl(或dub.json)文件.忽略未知设置.简单示例://dub.sdl可包含注释,请尽量简洁!name "我的"description "示例"authors "呀"homepage "http://myproject.example.com"license "mit"dependency "vibe-d" version="~>0.7.23"全局设置构建设置,也可在此用.名字参数描述name[必

2020-07-29 23:23:35 647

原创 学习AA大神c++设计新思维笔记:11多方法

多方法用来解决(A,B,C)每类都有大量关系时选择相应函数.因为他们都是指针型.如碰撞,当然还有很多.暴力法缺点:要知道所有类且顺序不能乱缺点:仍然产生M * N数量代码.静态分发只负责找正确类型,然后将找到的函数,然后启动.要先排序型列.加上对称性.仿函数可以保存变量.函子分发器,将调用分发至任何对象.内部包含一个基本分发器,即后端.用来存储函子.在这个分发器里面将基针转为具体继承针.分发器编译期就会发现重载歧义总之,在继承体系中,出现多个基,则必须用动转,否则静转就行了.然后将转型也视为策略.

2020-07-29 19:55:00 323

原创 学习AA大神c++设计新思维笔记:10访问者模式

访问者模式用来不改变原继承体系下,实现新的功能.方便添加新类,但不容易添加新虚函数,可以参考这里,两个是一样的.只是祁大神的的没有返回的R参数.访问者,始终有个动转.能否再用CRTP消灭掉这个运转呢?将各种概念性操作,提取出来,放在一起.应该这样,提取出最基本的操作,然后扩展,泛化.无循环访问,与循环访问.尽量把代码提取到库中.访问器依赖每个待访问类,在每个允许访问的类中,加个允许访问宏.当然参数为(基访问器*)通过这个基访问基*实现多态.当然也可不用宏,具体实现.可以找型列相似结构.元&l

2020-07-29 15:46:10 289

原创 学习AA大神c++设计新思维笔记:0809工厂与抽象工厂

对象工厂功能:由标识产生对象,避免以前那种猜(类型)语句.以达到不修改文件,只增加文件(更易维护)的目的.类之间要相互隔离.通过注册产品,由产品具体实现功能.工厂不必知道具体产品.当然,还要考虑错误处理.也可搞成策略.映射的插入有返回值.t=映.插入(...).第二,为成功与否.关联向量,大量查找,少量插改.F,注意,返回为基*.元<基,标识,参数>还有克隆,基类声明个虚,子类再实现他.然后返回子类*,但这个有缺点.可以用虚,如果子类未实现,则编译器通知产品有 具体,抽象之分.只有面

2020-07-29 15:45:25 287

原创 学习AA大神c++设计新思维笔记:0607单件与灵针

单件台湾人的,实作是实现的意思.很复杂的.包括如何分配,如何消灭,多线程安全,消灭后操作.静态函数/成员变量的缺点:不能为虚函数,外界很难改变行为.并且很难初化/清理. 元<型名 T, 元<类>类 创建策略=用新创建, 元<类>类 生命期策略=默认生命期, 元<类,类>类 线程模型=洛基默认线程无对象级, 类 互斥锁策略=洛基默认互斥锁 > 类 单件持有者{

2020-07-29 15:44:17 308

原创 学习AA大神c++设计新思维笔记:05命令模式

命令模式调用者–命令–接收者.就这样,就解耦了.可调用体,就是现在的函数<...>了.已经有了可变模板参数及可变函数参数.环境即绑定.函数子类对象用于封装对象,成员函数,参数这样,就是皮肤/槽位可换肤的关系.元<型名 R,类 型列>函数子{};因为型列就是用型的列表,这样用不变,代替了可变.复制是为了产生多态的对象.纯虚,都要析构,正确析构.元<型名 R,型名 型列>元<型名 F>函数子<R,型列>::函数子(F&f):..

2020-07-29 15:43:16 233

原创 学习AA大神c++设计新思维笔记:04小内存分配

小内存分配小型对象不能存在栈上?廉价而快速的动态分配.在堆上.主要就是各种策略类.c堆分配器的简单包装.c通常分配(数百~数Kb).而c++默认管理为8个字节.如果是小对象,则很浪费.间接层(pimpl),则为堆内存搜索匹配算法:最先,最佳,最差,随机,回收是也要来次线性搜索.主要探讨的就是根据小型对象的专用分配器.其实就是加个限制条件,来求最佳解.构 块{ 空 初化(整 块大小,正 符 块); 空*分配(整 块大小); 空 回收(空*p,整 块大小); 空 发布(

2020-07-29 15:42:16 293

原创 学习AA大神c++设计新思维笔记:03类型列表

类型列表.这一章没啥内容.因为好像可以用元<...>替代了.策略类还可以解决无尽的命名问题.更抽象.虚函数不能是模板.型列就是专门的类型.以空类型结尾.1,线性化,用宏.(宏不能递归).所以,…2,计算长度.元<型名 T,型名 U>构 长度<型列<T,U>>{ 枚 {值=1+长度<U>::值;};};//这里有递归,这里有构的特化,注意,是对型列<T,U>的特化.编译期的值不变,无法迭代.只能递归了.3,索引

2020-07-29 15:41:27 278

原创 学习AA大神c++设计新思维笔记:02工具

工具局部类没啥用,静断,偏特化,都很普通了.整2型可用于,分发,这样不同情况,用不同函数,因为是不同类型,所以用不同函数.如整2型<是多态>.现在可用如 常式来代替.多方法,双分派.型2型与整2型一样,用于函数分发.分开.选择<真/假,T,U>,真则为T,假为U.可以选择<是多态,T*,T>.编译期判断可转换,可继承.现在可在类型特征里面,都有.如果某个类有接口,则不用动转.型长(式)可直接返回大小,不用运行时,可感知重载,实例化,转换规则.型长可推导表达式类型,

2020-07-29 15:39:12 290

原创 学习AA大神c++设计新思维笔记:01基于策略的类设计

基于策略的类设计增加程序弹性,并提高复用性.具备复杂功能的基于策略的类由许多小类组成.小类,负责行为/结构单一功能全功能接口即大类,是不行的.良好设计应在编译期就能进行很好的约束(断定).多重继承,无法解决单独设计时的多样性.模板很适合组合.多重继承,很容易扩张,但欠缺技术.而模板丰富技术,有类型信息,无法扩张.因而可结合模板/多重继承.因为两者互补.策略,用来定义类/类模板接口.与编译期紧相关.元<类 T>类 新创建{ 静 T*创建(){ 中 新 T();

2020-07-29 15:38:05 347

原创 众神之古老秘密

import std.stdio;void foo(string) { writeln("foo(string)"); }void foo(int) { writeln("foo(int)"); }void main() { auto a = cast(void function(string))&foo; auto b = cast(void function(int))&foo; a(""); b(10);}有点像函数<...&

2020-07-28 18:27:52 224

原创 c++带参工厂模式

#include<常用>#include"消息.h"元<型名 B,型名...O>构 工厂{ 用 F=函数<独针<B>(O...)>; 工厂()=删;用 T=无序映<整,F>; 静 极 注册(整 标识,F f){ 动&t=取();动 p=t.查找(标识); 如(p==t.尾()){t[标识]=f;中 真;} 中 假; } 静 独针<B>

2020-07-27 10:44:40 436

原创 c++简单工厂模式

#include<常用>#include"消息.h"用 名字空间 标;类 啊{公: 啊()=删;用 创建方法=函数<独针<消息基>()>; 静 极 注册(整 标识,创建方法 创建者){ 动&映射=取映射();动 它=映射.查找(标识); 如(它==映射.尾()){ 映射[标识]=创建者; 输出<<标识<<"[!串000]";中 真;

2020-07-26 23:34:48 225

原创 本人公众号以前链接,随时可学习

D菜谱0102深度学习MxNet原作者视频.啊哈,看到的都有福了,历年的百度云分享大全D菜谱0107D菜谱0106D菜谱0105D菜谱0104D菜谱0103D菜谱0202D菜谱0203D菜谱0111D菜谱0110D菜谱0109D菜谱0108D菜谱0209D菜谱0210D菜谱0207D菜谱0208D菜谱0206D菜谱0205D菜谱0204D菜谱0307D菜谱0306D菜谱0304D菜谱0305D菜谱0303D菜谱0211D菜谱0302D菜谱0407D菜

2020-07-24 10:28:18 1498

原创 又一个继承宏.

#define 继针(S,T) \ 向量<S*>针;\ 元<型名...G>允许如型<元与值<是基<S,G>...>>\ 加(G*...o){(压(针,o),...);}\ ~T(){清理针(针);}\//S为待继承,T为本结构,可以直接插入使用者里面//元<类...G>允许如型<(是基值<B,G>&&...)> //在这里可使用(??&&...

2020-07-23 17:20:23 291 1

原创 代码折叠与元与值.

元<类...G>允许如型<元与值<是基<B,G>...>> 元<类...G>允许如型<(是基值<B,G>&&...)> 上面两句大致相同,详细见注意.元与内部是<型>,而不是值,避免编译不过去.以及折叠表达式的用法,不能省略括号(??&&...)....

2020-07-23 17:09:53 217

原创 专利相关基础知识及优缺点

专利申请流程专利申请费用费用2专利搜索查询点在线阅读,后面有相应下载.年费,小的公司或个人可申请减免85%.相应的专利费就下来了.

2020-07-23 08:44:11 383

原创 rust原子引用计数示例

use std::sync::{Mutex, Arc};use std::thread;fn main() { let counter = Arc::new(Mutex::new(0)); let mut handles = vec![]; for _ in 0..10 { let counter = Arc::clone(&counter); let handle = thread::spawn(move || {

2020-07-21 17:32:03 403

原创 继承体系可实现流水化过滤

#include <常用>构 B{ 虚 空 呀()=0; 空 哈(){ 打印("B"); }};构 A:公 B{ 空 呀(){ 打印("A呀"); }};构 C:公 B{ 空 呀(){ 打印("C呀"); }};构 D:公 B{ 空 呀(){ 打印("D呀"); }};元<型名 B,型名 T>允许如型<是基值<B,T&

2020-07-20 10:43:17 242

原创 极点五笔常用特殊符号编码

zzbd 。 , 、 ; : ? ! … — · . ˉ ˇ ¨ ‘ ’ “ ” 々 ~ ‖ ∶ " ' ` | 〔 〕 〈 〉 《 》 「 」 『 』 〖 〗 【 】 ( ) [ ] { }zzd ⒈ ⒉ ⒊ ⒋ ⒌ ⒍ ⒎ ⒏ ⒐ ⒑ ⒒ ⒓ ⒔ ⒕ ⒖ ⒗ ⒘ ⒙ ⒚ ⒛zzde А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я Ёzzdl Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ Ⅺ Ⅻzzds ⒈ ⒉ ⒊ ⒋ ⒌

2020-07-18 23:14:36 1962

原创 坑人的级与极.不注意写错了

级/极不分.写错了.找半天,还重启了.到处都是坑.

2020-07-18 09:35:57 252

原创 这个文件关联不靠谱,有破坏作用,小心

对,就是这个关联文件是个批处理,可惜,他乱搞,没用.用文件关联时要小心.一不注意,出大错.还得擦屁股.1,bat关联.关联回来2,右键txt关联.恢复回来.真坑人的东西!

2020-07-17 20:36:34 222

原创 升级vim为最新8.2版本

升级vim是个大事情.又总是常见.所以,要记录下来:1,用迅雷下载最新的exe.2,将原来的vim目录重命名为vim111.3,将_vimrc复制过去.4,将pathogen.vim复制到autoload,5,将我的目录复制进有gvim.exe目录.现在主要就是许多文件的默认打开方式,又要再改了....

2020-07-17 17:01:42 3275

原创 线程与共享的麻烦事.

import std;class S { SysTime a; shared SysTime b; synchronized shared void setIt(SysTime t) { // What I used to do cast () a = t; // Here you need to cast away shared anyway cast () b = t; // so it doesn't make any di

2020-07-16 16:24:55 252

原创 提升一个函数的权限(linux)

import std.stdio;import std.process;import std.format;import std.algorithm;// Copied the interface from executeShellauto executeShellSudo(scope const(char)[] command, const string[string] env = null, Config

2020-07-16 14:30:31 354

原创 d论坛学习,记录日志

enum LogLevel { INFO, WARN, ERROR }template log(LogLevel level){ void log(Args...)(Args args, string fn = __FUNCTION__, string file = __FILE__, size_t line = __LINE__) { writeln(Clock.currTime(), " [", level, "] ", file, '(', line, "): "

2020-07-16 14:22:37 349

原创 dmd改变默认链接器

-fuse-ld=gold -Xcc=-fuse-ld=goldgnu 的gold链接器或其他

2020-07-16 14:15:19 274

原创 c++及其他的公众号专辑示例,不断添加中.

cioc语言c数值c++算法

2020-07-16 11:42:46 588

原创 通过函数级链接/Gy降低exe文件大小.

这样我们就可以不断的增加自己的常用的东西,而不用大费周章的瞎折腾了.我前几天,没搞懂.是要,先在编译自己的静态库中就用/w /Gy /std:c++latest.其中/Gy为关键.然后,在传递给link的选项中加入/OPT:REF,就可以了.亲测成功.以后不用担心exe文件太大了....

2020-07-16 09:39:30 478

原创 最新的cl编译器如下降低大小,没用

#pragma comment(linker, "/FILEALIGN:16")#pragma comment(linker, "/ALIGN:16")#pragma comment(linker, "/OPT:REF")#pragma comment(linker, "/OPT:ICF")#pragma comment(linker, "/OPT:NOWIN98")// 合并段#pragma comment(linker, "/MERGE:.rdata=.data")#pragma com

2020-07-16 08:29:04 464

原创 css,overflow要注释掉.

要注释掉/*overflow:auto*/这句话.不然微信公众号始终有条条

2020-07-15 22:58:53 375

原创 gcc可以去掉未用函数.cl呢?

CFLAGS 加上 -ffunction-sections -fdata-sectionsLDFLAGS 加上 --gc-sections参考地址cl没找着.

2020-07-15 21:12:49 370

原创 太吓人了,编译器内部错误1001.

我还以为我又犯错了.我开始实验了一下c++20的微软模块功能,不成功.要把这个/experient:module.给注释掉.这里的单词可能拼错了.请注意.太吓人,说msc1.cpp错误,找都找不着有这么个文件.我只要链接了我自己的常用库的函数,起码都是550kb,使用了一个都这样,不链接自己库时,只有200kb.该怎么减小obj文件大小呢,网上搜索半天都没相关信息....

2020-07-15 20:45:08 411

原创 我的常用文件头太大了,我得拆分

现在只想到一种思路:从后往前一个个的拆分(函数)

2020-07-13 22:56:32 362

原创 c++多极变

空 加一(极&a,整&m,整 n){ 如(a)中;如(!n){a=1;中;}m++;}//如前面停止了,中m,当前n为0,中m,否则加1个空 减一(极&a,整&m,整 n){ 如(a)中;如(!n){a=1;中;}m--;}//如前面停止了,中m,当前n为0,中m,否则减1个元<极 M,型名 T,整...I>整 多级变(T&t,序列<I...>){ 极 i=0;整 m=0; 如(M){ (

2020-07-13 18:13:14 270

原创 在bing中保存自己的搜索关键字.

弄了一上午,用文件保存方式不爽,不如用本地存储,如下:参考地址var s=new Set();var a=window.localStorage;function gg(){ var i=s.size; var q=document.getElementById('sb_form_q').value; s.add(q);var j=s.size; if(i==j)return; var t=new Date(); var m=t.toLocaleTim

2020-07-13 14:51:55 379

ARM9嵌入式系统设计:基于S3C2410与Linux-徐英慧

ARM9嵌入式系统设计:基于S3C2410与Linux-徐英慧

2018-09-29

102.《高中数学竞赛专题讲座 初等数论》边红平本书主编

102.《高中数学竞赛专题讲座 初等数论》边红平本书主编

2018-09-29

0_非线性振动系统的分叉和混沌理论_陈予恕_1993_kkkyyy

0_非线性振动系统的分叉和混沌理论_陈予恕_1993_kkkyyy

2018-09-27

图论算法与程序设计

图论算法与程序设计

2018-09-27

[广义函数2].(前苏联)盖尔范德.清晰版

[广义函数2].(前苏联)盖尔范德.清晰版

2018-09-26

[Android技术内幕:系统卷].杨丰盛.扫描版

[Android技术内幕:系统卷].杨丰盛.扫描版

2018-09-26

python并行react响应pandas手册epub.7z

python并行 react响应式开发 pandas手册 epub+code.7z

2018-09-23

掌握php7.7z

掌握php7.epub+code。

2018-09-20

Python Web Scraping.7z

Python Web Scraping.7z Python Web Scraping.epub+代码 python网络爬虫

2018-09-18

Practical C++ Design From Programming to Architecture.epub

Practical C++ Design From Programming to Architecture c++编程设计从编码到架构

2018-09-18

Mastering Assembly Programming.epub

Mastering Assembly Programming 掌握汇编语言 掌握汇编语言

2018-09-18

Mastering the C++17 STL in C++17.epub

Mastering the C++17 STL Make full use of the standard library components in C++17

2018-09-18

Web Development with Bootstrap and Vue.js.epub

Web Development with Bootstrap and Vue.js Web Development with Bootstrap and Vue.js

2018-09-18

编译时开发D语言

编译时开发D语言

2018-09-17

DcookbookD菜谱有标题

DcookbookD菜谱有标题中文版

2018-09-11

DcookbookD菜谱

DcookbookD菜谱中文版

2018-09-10

编译原理:学习指导与典型题解析.pdf

编译原理:学习指导与典型题解析.pdf

2018-09-07

并行算法的设计与分析, 陈国良, 3ed, 2009

并行算法的设计与分析, 陈国良, 3ed, 2009

2018-09-07

《图论的算法与程序设计》(作者)吴文虎 清华大学 1997年3月第1版

《图论的算法与程序设计》(作者)吴文虎 清华大学 1997年3月第1版

2018-09-07

《并行图论算法》(作者)唐策善 中国科学技术大学 1991年10月第1版

《并行图论算法》(作者)唐策善 中国科学技术大学 1991年10月第1版

2018-09-07

鸿蒙文档中文目录版 鸿蒙文档中文目录版

鸿蒙文档中文目录版 鸿蒙文档中文目录版

2023-11-21

wtl文档大全 wtl,文档,大全.

wtl文档大全 wtl,文档,大全.

2022-05-10

purecpp大会课件.7z

http://purecpp.org/大会课件打包

2021-01-13

chromecdn.7z

googleapi地址替换,有些api需要google的接口文件 googleapi地址替换,有些api需要google的接口文件

2021-01-08

Python-3.9.0.tgz

Python-3.9.0.tgz 2020 11 19最新源码.用于快速下载

2020-11-19

youcompleteme.7z

最新.2020.10.31最新youcompleteme补全.你只需要下载这一个. 然后安装即可.在网速不够,或下午速度不够时,可以直接下载它.

2020-10-31

VisualD-v0.50.0.exe

visuald,用于辅助d开发的vs插件

2020-10-14

qthtml5.9英文文档.7z

qt5英文html文档.不用官方的pch不方便. qt5英文html文档.不用官方的pch不方便. qt5英文html文档.不用官方的pch不方便.

2020-10-14

gtkdcoding.7z

gtkdcoding,2019.11前 gtkdcoding,2019.11前 gtkdcoding,2019.11 gtkd,跟着博客学.结合360极速浏览器.自动翻译.

2019-11-06

msdn文档文档文档啊啊啊.zip

msdn,20000,文档

2019-10-07

qt-vsaddin-msvc2019-2.3.4.vsix

2019.07.10,最新的vs的qt插件.开发qt不用愁.

2019-07-10

GtkD-3.9.0.zip

最新的gtkd.2019.07.10

2019-07-10

NTFS_FileLocation_Test_修改.7z

NTFS_FileLocation_Test_修改.7z

2019-01-23

20181230c++中文参考大全高亮版

20181230c++中文参考大全高亮版

2019-01-15

上海贝尔三个固件打包a

上海贝尔RG100A-BA原厂固件破解配置 rg100a-openwrt刷机固件 电信rg100a-aa猫可刷此固件,进行脱机下载

2019-01-14

真正的pediy加密与解密第四版光盘内容可解压版本下载地址

真正的pediy加密与解密第四版光盘内容可解压版本下载地址

2019-01-13

学习链接大全

包括时事,c++,中医,闲扯淡呀,安卓,单片机,等等。 希望大家喜欢。

2019-01-12

20181014c++中文参考大全

20181014c++中文参考大全

2018-11-06

Essentialc++对象模型

Essentialc++对象模型

2018-09-29

c++核心编程指南中文版

c++核心编程指南中文版

2018-09-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除