- 博客(9)
- 资源 (4)
- 收藏
- 关注
原创 C++ 和 C 的效率比较
对于很多人来说,C++ 似乎比 C 易用,很多捧 C++ 的也说,C++ 具有 C 的效率。不过,说来说去,还是需要分析一下才行。比如,对于一个3维坐标的点来说,建一个 C++ 的类,大概会是:class point_cpp{protected: int x_, y_, z_; point_cpp(int x, int y, int z) : x_(x), y_(y), z_(z) { } ......};对 C 来说,即是:struct point_c
2021-12-28 19:19:54 2756 3
原创 OpenFOAM 中的 RTS 机制
OpenFOAM 中的 RTS 实现,使用了很多宏定义展开,所以不容易理解。不过,也有分析文章,用了简单的例子,分析了编译展开后的代码,应该是说得比较好的。OpenFoam RTS 实现分析,如下:http://xiaopingqiu.github.io/2016/03/12/RTS1/RTS 相当于一个类工厂,所以需要先了解类工厂的机制,也有说得很明白的文章,如下:Factory Pattern in C++:https://www.codeproject.com/articles/36
2021-10-21 23:17:32 718
原创 C语言的 restrict 关键字的作用
restrict 这个关键字到底有什么用,还是用代码看得清楚。这里,c 标准说明中用了如下的例子:#include <stdio.h>int foo(int *a, int *b){ *a = 5; *b = 6; return *a + *b;}int rfoo(int *restrict a, int *restrict b){ *a = 5; *b = 6; return *a + *b;}void main(voi
2020-09-27 23:37:35 1006 1
原创 把 java 转成 c++
有很多 Java 代码,要转成 c++,怎么办?上网搜了下,还真有人干这个。 JunC++ion是一个,看起来是一个公司的产品,下载要注册。 Toba 是 edu的网站提供的,看来是 Free 的好同志。不过,就表面看来,Toba 提供的是源码,它自称是一个 Java 的高效编译器,不仅能将 Java编译成可以运行的程序,还能将其编译成 c 代码。而 JunC++ion 看起来比较商业,提供比较好...
2018-04-20 16:27:44 7410 2
原创 线程安全的循环队列缓冲区
循环队列,效率比较高,原因是:不需要什么初始化、释放动作,循环利用。但是,一般的容器类,比较复杂,更不提供线程安全。 这里,基于我自己编写的可移植库 xsys 编写了一个容器类,大家根据自己的编程环境,也很容易移植吧。如下: #pragma once#ifndef MAX_NODE#define MAX_NODE 1024#endif // MAX_NODE
2012-02-22 15:13:12 1682 1
原创 ODBC API不能释放Oracle数据库连接
ODBC API打开数据库连接,一般用: SQLDriverConnect关闭数据库连接用: SQLDisconnect 但是要精细控制,需要设置连接数据库HANDLE的属性,比如比较普通的有版本号,超时时间等等。最近编程发现,用关闭数据库还不能释放。看样子是释放成功了,但用Oracle的管理工具看,或者看v$session表,发现连接还存在,状态是INACTIVE。 怎么
2010-04-03 18:30:00 1083 1
原创 VB字符串左边填0的办法: LPad0
左边填空格,有LPad,填0呢,就起个名字叫LPad0吧。这个也应用比较多。 估计不会填太多0,因此用如下办法: Public Function LPad0(ByVal s As String, ByVal l As Integer) As String Dim slen As Integer slen = l - Len(s) If slen Then
2010-04-03 18:26:00 2386
原创 程序变换: 转C++为C
简单定义下程序变换:在不改变功能(输入输出的对应关系)情况下,将程序改变成另一种形式表达。 可以看出,程序变换,是一种函数的等价变换。 广泛意义看来,所有编译都是变换。那么,将C++程序转成C的思路,就是针对C++的表达语法,C中没有的或不同语义的,找出相应的等价变换。 略微分析一些,如下: // 转structstruct x {...}; // c
2010-04-03 18:09:00 704
Linux下的Java多媒体增强包
2010-04-03
Windows 串口通讯C++类
2009-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人