C#运行时替换类的成员函数 using System;using System.Reflection;using System.Runtime.CompilerServices;using System.Diagnostics;// 工具定义// 注意: 需要 "unsafe编译" ([项目属性 - 生成] 勾选"允许不安全代码")// 仅仅实现了 x64支持namespace MethodReplace{ public static class MethodReplaceUtil { .
C#表达式树示例 // C#表达式树用法示例// (本文参考了 https://www.jb51.net/article/101999.htm)using System;using System.Linq.Expressions;namespace ConsoleApp1{ class Program { static void Main(string[] args) { // x = 200 + 100 var d.
C#的函数重载关键字override和new 重载基类的普通函数(按变量声明类型调用), 用 new.重载基类的虚拟函数(virtual)和抽象函数(abstract),用override派生调用基类的同名函数, 用baseusing System;namespace ConsoleApp1{ class A { protected int _x = 0; protected int _y = 0; public int SetX(int x) .
C#计算连分数 using System;using System.Collections.Generic;namespace fraction{ class Program { // 计算连分数 static Int32[] GetFraction(double f, int n) { var d = new List<Int32>(); if(f <= 0) .
C++双向指针示例 // 双向指针#include <iostream>#include <memory>#include <utility>#include <vector>template <typename T1, typename T2>struct Linked { friend struct Linked<T2, T1>; Linked(T2* t) { other = nullptr; data .
吴军《智能时代-大数据与智能革命重新定义未来》读书笔记 吴军《智能时代-大数据与智能革命重新定义未来》读书笔记1. 原有产业+新技术=新产业 原有产业+蒸汽机=新产业 (机械化) 原有产业+电=新产业 (自动化) 原有产业+摩尔定律=新产业 (信息化) 原有产业+大数据/机器智能=新产业 (智能化)2. 使用数据的标准流程 获取数据 -> 分析数据 -> 建立模型 -> 预测未知3. 机器智能...
二维瓦片网格边界检测 二维瓦片网格边界检测1. 每个网格只考虑ENWS四个相邻格子四个相邻格子ENSW编号为0~32. 当前方向D(0~3): 如果当前格子是上一个格子选择的ENSW(0~3)中的一个, 则这个选择就是当前方向3. 选择下一个的策略:按找以下优先级判断 (D+3)%4, (D+4)%4, (D+5)%4, (D+6)%4(第一优选是右手侧, 最后一项是原路返回)如果这四...
选第K大的数 #include <algorithm>// 快速排序方式的选第K小的数// (如果是选“大”的数, 可以把比较用greater, 或者选第n-k个)template<typename T, class _Pr>int get_pos(T* data, int n, int k, _Pr _Pred){ int h = 0; int t = n - 1...
枚举遍历组合 #include <iostream>#include <vector>#include <algorithm>// 组合枚举// 初始化std::vector<int> init_combination(int M){ std::vector<int> data; for (auto i = 0; i < M;...
模板元编程-判断质数 #include <iostream>#include <type_traits>template<uint8_t N>struct is_prime{ template<uint8_t N1, bool finish> struct is_prime_check { enum {check_end = (N1*N1 > ...
C++模板判断类是否存在某个成员变量 #include <iostream>#include <type_traits>// 检查 xxxx 是否是类T的成员template <typename T>struct has_member_xxxx{ // 如果 &T::xxxx 合法, 本函数就合法 // 下面check<T>(0)优先调用本函数, 返回值是voi...
摩尔斯电码字典序号 // 摩尔斯电码字典序号// 原题参见// https://bbs.csdn.net/topics/392691483#include <iostream>#include<string>// 求组合数C(N, n)int c(int N, int n){ double p = 1.0; for (int i = 0; i <n; ++i) ...
函数调用链 // 将不同参数和返回值的函数组织到数组里并依次调用// (目前尚不支持void函数)#include <vector>#include <memory>#include <iostream>#include <functional>#include<string>#include <sstream>usin...
把不同类型的对象放入数组 #include <iostream>#include <vector>// 接口定义class I{public: virtual void dosome() = 0;};// 实现1class A {public: void dosome() { std::cout << "A dosome()" << std...
C++的promise和future #include <iostream>#include <thread>#include <future>// https://en.cppreference.com/w/cpp/thread/promise// https://zh.cppreference.com/w/cpp/thread/promisevoid add(std::promis...
Windows简单TCPIP服务 参考链接https://msdn.microsoft.com/zh-CN/library/hh202858(v=vs.92) (后面“在您的计算机上启动简单 TCP/IP 服务”)https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc725973(...
GitFlow简介 GitFlow涉及5种类型的分支:1. master 项目初始化创建master分支。2. develop 项目初始化后从master生成分支。3. feature 开发新功能, 从develop生成新分支,本类型的分支可以有多个。 开发完成后, 合并到develop。 本分支结束。4. release 准备发布,从develop生成新分支, 开始测...