202301-31 C/C++中虚函数详解及其作用介绍 目录概述使用方法关联静态关联动态关联案例1未使用虚函数使用虚拟类案例2总结概述虚函数(virtualfunction)指可以被子类继承和覆盖的函数.使用方法基类声明成员函数为虚函数的方法:virtual[类型]函数名([参数表列])注:在类外定义虚函数时,不需再加virtual.虚函数的特点:提高程序扩充性:派生类根据需要可以进行函数覆盖成员函数被声明为虚数后,其派生类中覆盖函数自动称为虚函数若虚函数在派生类中未重新定义,... 继续阅读 >
202107-12 对Keras自带Loss Function的深入研究 本文研究Keras自带的几个常用的LossFunction。1.categorical_crossentropyVS.sparse_categorical_crossentropy注意到二者的主要差别在于输入是否为integertensor。在文档中,我们还可以找到关于二者如何选择的描述:解释一下这里的Integertarget与Categoricaltarget,实际上Integertarget经过独热编码就变成了Categoricaltarget,举例说明:(类别数5)Integertarget:[1,2,4]Categoricaltarget:[[0.1.0.0.0.]... 继续阅读 >
202101-13 C++类重载函数的function和bind使用示例 在没有C++11的std::function和std::bind之前,我们使用函数指针的方式是五花八门,结构很繁琐难懂。C++11中提供了std::function和std::bind统一了可调用对象的各种操作。1.std::function简介std::function首先是可调用对象,本质上生成了一个类(仿函数)简单的使用如下代码#include<unordered_map>#include<iostream>#include<functional>usingnamespacestd;intfunc(inta){cout<<a<<__FUNCTION__<<endl;returna;}... 继续阅读 >
202012-30 PostgreSQL function返回多行的操作 1.建表postgres=#createtabletb1(idinteger,namecharactervarying);CREATETABLEpostgres=#postgres=#insertintotb1selectgenerate_series(1,5),'aa';INSERT052.返回单字段的多行(returnssetofdatatype)不指定out参数,使用returnnextxx:createorreplacefunctionfunc01()returnssetofcharactervaryingas$$declarencharactervarying;beginforiin1..5loopselectnameintonfromtb1wher... 继续阅读 >
202010-10 Java8特性使用Function代替分支语句 传统的多分支方式(圈复杂度为6):publicStringorder(Stringtype){if("1".equals(type)){return"1";}elseif("2".equals(type)){return"2";}elseif("3".equals(type)){return"3";}elseif("4".equals(type)){return"4";}elseif("5".equals(type)){return"5";}else{return"none";}}使用Function函数式编程的新方式:privateMap<String,Function<String,String>... 继续阅读 >
202010-08 Python偏函数Partial function使用方法实例详解 Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partialfunction)。要注意,这里的偏函数和数学意义上的偏函数不一样。在介绍函数参数的时候,我们讲到,通过设定参数的默认值,可以降低函数调用的难度。而偏函数也可以做到这一点。举例如下:int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数默认按十进制转换:int('12345')12345但int()函数还提供额外的base参数,默认值为10。如果传入base参... 继续阅读 >
202009-29 精读《Vue3.0 Function API》 1.引言Vue3.0的发布引起了轩然大波,让我们解读下它的functionapiRFC详细了解一下Vue团队是怎么想的吧!首先官方回答了几个最受关注的问题:Vue3.0是否有breakchange,就像Python3/Angular2一样?不,100%兼容Vue2.0,且暂未打算废弃任何API(未来也不)。之前有草案试图这么做,但由于用户反馈太猛,被撤回了。Vue3.0的设计盖棺定论了吗?没有呀,这次精读的稿子就是RFC(RequestForComments),翻译... 继续阅读 >
202009-28 Java8通过Function获取字段名的步骤 摘要:Java8通过Function获取字段名,解决硬编码,效果类似于mybatis-plus的LambdaQueryWrapper。本文总共三个步骤:1、使Function获取序列化能力;2、通过SFunction获取字段名;3、建一些业务代码进行测试;使Function获取序列化能力importjava.io.Serializable;importjava.util.function.Function;/***使Function获取序列化能力*/@FunctionalInterfacepublicinterfaceSFunction<T,R>extendsFunction<T,R>,Serializab... 继续阅读 >