- 博客(157)
- 资源 (43)
- 收藏
- 关注
原创 C++ vector
上验证代码,但后来开始消耗算力才能使用。最近发现MarsCode 不光可以免费使用,还有很好的提醒和ai 代码生成能力,速度也更快,碾压lightly。首先安利一个好用的web ide,豆包MarsCode。
2024-07-13 10:55:34 138
原创 c++中new和delete重载的一点介绍
通义千问中作答的,感觉回答的比自己总结的好:实际上,你可以在C++中重载new和delete运算符。重载new和deletenewdelete。
2024-07-07 09:02:32 313
原创 C++ 对象模型 -- vptr 和 vtbl
只有在类中有虚函数时,才会有虚指针以及虚表。一般函数和变量是通过静态绑定方式,调用时通过call xxx(函数地址)访问;而虚函数则是通过 对象指针 -> 虚指针- >虚表 -> 对应函数 这个过程来访问,这也是动态绑定方式。先看两张关键的图吧,右边的三个基类和派生类 A,B,C。定义了两个虚函数,两个一般成员函数,以及几个成员变量。是看侯捷老师讲解c++对象模型 虚表和虚指针的笔记和程序验证。如果使用多态方式,一般函数的访问取决于用的是什么类型对象访问,
2024-07-06 11:10:51 314
原创 【无标题】
加锁机制虽然可以保证多线程环境下的数据一致性,但也带来了性能开销,包括上下文切换、线程阻塞、缓存一致性问题等。在编写并发程序时,开发者需要权衡锁的使用,尽量采用高效的锁策略或无锁数据结构,以减少开销并提升性能。希望这些内容对你理解加锁后程序变慢的原因及相应的优化方法有所帮助。
2024-07-05 14:34:11 486
原创 C++ constexpr
constexpr是 C++11 引入的关键字,用于表示常量表达式。它允许编译器在编译时计算表达式的值,从而提高程序的运行效率,减少运行时开销。随着 C++14 和 C++17 的发展,constexpr的功能和应用场景也得到了进一步扩展。
2024-07-04 09:44:25 214
原创 c++ 虚函数表
4. **虚函数指针**:每个含有虚函数的类的对象实例中都会有一个隐藏的指针,称为虚函数指针(vptr)。5. **多态行为**:当通过基类指针或引用调用一个虚函数时,编译器生成的代码实际上会通过对象的vptr找到正确的虚函数表,然后根据虚函数在表中的偏移来调用实际的函数,这也就是多态行为的基础。3. **虚函数表的位置**:虚函数表通常存储在程序的只读数据段(如`.rodata`或`.rdata`),这意味着它是全局的,对于同一个类的所有对象共享同一份虚函数表。
2024-06-25 10:44:01 259
原创 创建 python 虚拟环境
使用python 独立环境,用conda 是很方便的。但conda 属于商业软件,可能公司会管制。激活后,可以使用pip 安装对应的python包。
2024-06-17 15:48:19 179
原创 二叉树的遍历
二叉树遍历包括先序、中序、后序和层次遍历。先序、中序和后序属于深度优先,层次遍历属于宽度优先。前者可以通过递归和迭代方式遍历,迭代方式借助栈。层次遍历则可以借助队列。
2024-06-16 06:54:56 410
原创 typedef 和 using 区别
typedef 和 using 都可以用于定义一个新类型。typedef 用于c语言中,被c++继承,目的是为已存在的类型创建一个别名。使用时应该写成 MyType<int>::type VecType;(typedef 不支持模板类型的定义);使用时,MyType<int> VecType1;using 则是c++11 新引入的语法, 可以用来替换typedef 定义别名的功能,并有更多的灵活性。的语法通常被认为更加清晰和直观,尤其是涉及到模板别名时。其中一个主要区别的例子,这涉及到模板别名。
2024-05-29 10:41:52 338
原创 linux perf
sudo apt install linux-tools-5.15.0-76-generic #注意对应版本。查看内核版本 uname -a。联网状态下执行下面命令。ubuntu 安装方法。
2024-05-24 10:28:45 167
原创 Linux系统时间同步服务 ntpd 和 chrony
时间同步协议(NTP),用于同步网络中计算机时钟的协议。它使用客户端-服务器或对等(peer-to-peer)体系结构,并使用层次化的、分层的多级系统,这些等级称为"stratum"。Stratum 0是精度最高的参考时钟源,如GPS时钟或无线电钟。Stratum 1是直接连接到stratum 0源的服务器,以此类推,数字越大表示离参考时钟源越远。ntpd是Network Time Protocol Daemon的缩写,它是用于在计算机系统间同步时间的守护进程(daemon)。
2024-05-07 21:19:51 552 1
原创 gstreamer pad cap的协商
但是,了解如何在代码里面执行 pad 协商是很有帮助的,这在创建自定义元素或更细致地控制数据流时尤其有用。2. **过滤能力**:如果 sink pad 有特定要求,可以调用 `gst_pad_peer_query_caps()` 函数进行过滤,保留 sink pad 支持的能力。1. **查询能力**:调用 `gst_pad_query_caps()` 函数获取源 pad 支持的所有能力集。4. **设置能力**:通过调用 `gst_pad_set_caps()` 函数将所选能力应用到相应的 pad。
2024-04-19 21:30:58 379
原创 网络工具iperf3的使用
网络丢包带宽测试工具 iperf3 简单认知_丢包测试-CSDN博客https://zhuanlan.zhihu.com/p/314727150
2024-04-17 12:02:56 124
原创 imgcat 工具
如果经常在远程服务器或嵌入式设备中操作图片,要查看图片效果,就要先把图片dump到本地,比较麻烦。可以使用这个工具,直接在终端上显示。类似于这种效果。imgcat是一个终端工具,使用内置的特性,允许用户直接在支持的终端模拟器上显示图片。原始的imgcat脚本是专门为 iTerm2 设计的,而现在一些其他的终端模拟器也开始支持类似的功能。
2024-04-16 21:01:30 374
原创 C++ 可调用对象 (Callable Object)
capture list 捕获列表是一个lambda 所在函数中定义的局部变量的列表。一个lambda 表达式代表一个可调用的代码单元,可以将其理解成一个匿名的内联函数。如果忽略了返回类型,lambda 表达式会根据代码推断出返回类型。可以忽略参数列表和返回类型,但必须有捕获列表和函数题。谓词 predicate, 即标准库算法传递的参数。
2023-08-05 07:48:33 222
原创 opencv 之videoio
主要是用来打开视频文件或者camera,输出对应文件/设备的流。官网videoio的教程。https://docs.opencv.org/4.1.1/df/d2c/tutorial_table_of_content_videoio.html简单的代码sample: cv::Mat mat; cv::VideoCapture cap("/opt/data/my_fac...
2019-10-12 15:25:43 2274
原创 Android屏幕适配
各种单位1. px像素2. in英寸3. 屏幕尺寸屏幕的物理尺寸,对角线长。4. 屏幕分辨率屏幕横边和纵边上的像素点,单位是px。比如1920*1080.5. 屏幕像素密度每英寸像素点数,比如120dpi,160dpi。与屏幕尺寸和分辨率有关。...
2019-09-14 12:12:11 167
原创 模型结构可视化神器
需要解析一下pb对应的网络结构,以及训练集使用的样本的尺寸。两个可视化工具tensorboard 和 netronhttps://github.com/lutzroeder/Netron
2019-05-22 21:18:29 720
原创 c++类型系统和强制类型转换
看到msdn上关于c++的类型介绍的不错,https://msdn.microsoft.com/zh-CN/library/hh279663.aspxhttps://msdn.microsoft.com/zh-cn/library/hh279667.aspx
2018-09-25 16:06:42 222
原创 gtest入门
使用环境:Ubuntu(Linux)#include "gtest/gtest.h"using namespace std;int sum(int a, int b) { return a + b;}TEST(FooTest, HandleNoneZeroInput){ EXPECT_EQ(3, sum(1, 2)); EXPECT_EQ(0, sum(1, ...
2018-02-22 13:42:08 313
原创 python 的文件和目录操作
使用File对象和OS对象官方文档参考https://docs.python.org/2.7/library/stdtypes.html#bltin-file-objects // 文件对象https://docs.python.org/2.7/library/filesys.html // 访问文件和目录另外中文文档可以参考http://www.runoob.co
2018-01-24 20:07:24 238
原创 android widget - SwipeRefreshLayout
https://developer.android.com/reference/android/support/v4/widget/SwipeRefreshLayout.html效果是这样的:上个代码吧,使用比较简单:package com.ali.yunos.androiddemo_n.activities;import android.app.Activity;
2017-07-18 17:50:12 373
原创 android widget -- ListView
https://developer.android.google.cn/reference/android/widget/ListView.html对于ListView这种adapter view,一般分为三个步骤:1. 准备数据源;2.new一个对应的adapter;3.设置adapter。下面举一个很简单的例子:public class ListViewDemoActivi
2017-07-18 15:39:55 421
原创 Node 的单元测试--jasmine
参考资料:http://www.ibm.com/developerworks/cn/web/1404_changwz_jasmine/http://jasmine.github.io/http://www.cnblogs.com/zhcncn/p/4330112.htmlhttp://www.tych.io/tech/2013/07/10/unit-test.html
2017-07-12 16:36:38 377
原创 《算法》笔记 - 01
《算法》第四版,Robert Sedgwick 著,谢路云 译。给个链接,http://product.china-pub.com/3684367 ,可以看看介绍。不少人推荐,要比《算法导论》更容易入门。所以就先看一下这个。会把相关的资源和习题、笔记都放在这里,希望对自己和大家都有帮助。http://algs4.cs.princeton.edu/code/ 是本书的配套网站,同时,
2017-07-02 10:14:06 324
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人