• 2023年7月工作经历二


    invoke的翻译

    C#的这个关键字很熟,但不知道如何翻译比较好。和网友沟通,并查阅多篇博文,觉得“同步调用(invoke)和异步调用(beginvoke)”比较好。

    VS2022很爽

    C#的类名,会提示命名空间。C++调试的时候,可以看到向量元素的值。C++的宏桀骜难懂,尤其是多层嵌套的时候,VS2022有“展开内联”功能可解决此问题。VS选中一个变量,其它处的此变量也会高亮显示。VS2022选中v[i] 只高亮v[i]。

    读取文件是否能线程加速

    测试多次,读取同样的两个文件,同样的电脑。
        休眠500ms    读取二进制文件    Halcon的HImage的Read
    单线程依次操作    约1000ms    100ms    2600ms左右
    多线程    约500ms    100ms    5000ms左右
    稳定性    非常稳定    用时非常不稳定,时高时低    用时较稳定
    小结    有效    几乎无效    负作用明显
    线程加速对读取文件无效,可能原因读取文件的瓶颈是:硬盘的转动速度。多个硬盘多线程也许有效。

    HImage和HRegion

    前家公司习惯用HObject,这家公司习惯用HImage和HObject。显然后者可理解性更强。用HObject的话,每次都需要区分那个是图形,那个是区域。

    发布Debug版给客户

    C++发布Debug(调试)版给客户,有两个问题:一,低版本VC(比如VC6)的Debug版的dll和Release版不同。所以Debug版,在客户那使用不了。二,断言影响客户使用。C#只有第二个问题。很多程序员不使用断言,那发布Debug版确实没问题。
    调试版和发布版分开的优点:一,调试版显示调试、测试功能,发布版隐藏。二,
    调试版不需要加密狗,发布版需要加密狗。

    修改C#程序版本号无效

    按以前的方式修改C#程序的版本号,总失败。原因是AssemblyFileVersion影响二进制文件的产品版本号和文件版本号。AssemblyVersion不影响。之前总是两者一起修改的。
    C++的产品版本号和文件版本可以不同。版本号由4部分组成,原以为每部分都是0到99,用C#和C++试验了,都可以是65535,不能是65536,就是uint16的范围吧。
    所以可以版本号第一位是年,第二位是月,第三位是日,第四位是编号。

    视觉软件工程师需要老程序员支援


    一年经验的视觉软件工程师,性价比最高的点是:铺战线(简单的业务和简单的硬件知识)。三年工作经验性价比最高的是:攻坚(深耕halcon算法)。五年工作经验的性价比最高的点:分工(概要设计师、开发组长)。之后是团队建设(部门经理)、利益分配(总监)。根本没多少精力分配到开发工具(开发语言、类库)、基础算法(树桩数组、动态规划)、通用知识(文字编码、文件格式)。

    https://img-blog.csdnimg.cn/ea2601b3918f4aef836b5fe30da2ebf7.gif#pic_center#pic_center

    其它

    视频课程

    基础算法的C++实现课程,请点击下面的CSDN学院的链接。

    https://edu.csdn.net/course/detail/38771

    我还做了其它课程,比如:C++入职培训,C#入职培训。

    https://edu.csdn.net/lecturer/6176

    运行验证环境

    Win10 VS2022 Ck++17 或win7 VS2019 C++17

    相关下载

    如果你时间宝贵,只想看精华,请到CSDN下载频道下载《闻缺陷则喜算法册》doc版

    https://download.csdn.net/download/he_zhidan/88348653

    博主有几句话想对大家说

    算法是程序的灵魂,没有好的算法,程序就死气沉沉。

    问题发现得越早,越给老板省钱。我简称为:闻缺陷则喜。

    有所得,以墨记之,故曰墨家

    https://img-blog.csdnimg.cn/f95ddae62a4e43a68295601c723f92fb.gif#pic_center

  • 相关阅读:
    通过redis学网络(2)-redis网络模型
    【报错】ModuleNotFoundError: No module named ‘scp‘
    Java 自动化测试详解
    玩转微服务-SonarQube
    K8s:Pod 中 command、args 与 Dockerfile 中 CMD、 ENTRYPOINT 的对应关系
    UE4 C++设计模式:状态模式(State Pattern)
    Https握手过程
    countdownlatch 和 completableFuture 和 CyclicBarrier
    C++ STL 教程
    评估和选择最佳学习模型的一些指标总结
  • 原文地址:https://blog.csdn.net/he_zhidan/article/details/133588936