学习C++
文章平均质量分 72
益阳浪子
BS/MS/PHD in Laser/Optics/EE
Currently working as a principle engineer and project manager in a company in US. Current interest in C /MFC/OpenGL for medical ultrasound applications.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一个简单的实现matlab数组下标操作的类实现
(sguox002原创作品,欢迎批评,转载请保留作者信息)#include using namespace std;template class ind_array;template class array{public: int len原创 2011-08-13 01:33:01 · 4937 阅读 · 1 评论 -
Customize vs 2010 build settings using visual studio's macros and customized macros
When projects become larger and larger, managing the debug/release win32/win64 combinations may become原创 2014-11-05 08:46:16 · 636 阅读 · 0 评论 -
win32 code migrated to win64
Migrating code from win32 to x64 is pretty simple, there are just a few things to pay attention to:原创 2014-11-05 08:26:16 · 550 阅读 · 0 评论 -
为什么std::valarray那么慢(2)
原创作品,欢迎批评,转载请保留作者信息。上一篇文章我发现valarray比普通的循环慢了很多,原因在哪里呢?我们看看valarray是如何实现c=a*b的。#define _VALOP(TYPE, LENGTH, RHS) \valarray _Ans(L原创 2011-08-14 07:11:45 · 3899 阅读 · 0 评论 -
为什么std::valarray会很慢。
(sguox002原创作品,欢迎批评,转载请保留作者信息)std::valarray有着很多吸引人的特性。比如下标数组,切割,逻辑,算术运算。我们慢慢学习。在这之前,我想看一下这个类的性能如何,因此我编了一个小程序,来做同样的计算。结果发现valarray要比普通的循原创 2011-08-13 11:01:28 · 1388 阅读 · 1 评论 -
varray: 灵活的数组结构与stl valarray的解构(2)
上一片文章我们构造了一个简单的varray类,对这个用户定义的具体类型来说,还不够功能完善,有很多的运算符操作都没有放进去。这是特的为了表述清楚而没有加入的。这类操作包括:1。取+/-/~/!等操作2。与标量的数学运算:+,-,*,/,%,|,&, 3。与varr原创 2011-09-11 07:43:15 · 801 阅读 · 0 评论 -
表达式模板(2)
原创作品,转载请保留版权信息。上一篇文章我讨论了一个表达式模板的例子。因为我也是在学习C++的过程中,上一篇文章并没有能把这个类的设计思想吃透,而且也有一些技术细节没有讲清楚。这一片文章就是为了进一步弄清楚这个表达式模板。只有知其然而且能够知其所以然,我们才能够自己设原创 2011-08-15 12:46:34 · 545 阅读 · 0 评论 -
debug vs release mode 性能差异可能巨大
上次我们发现valarray比一般的C循环慢。当时是在release mode下比较的。如果读者在debug mode下面编译执行,你可能会发现valarray的运行速度可能还要降低10倍以上。这是为什么呢?深入研究valarray的实现,里面也没有任何的调试代码,也不依赖于原创 2011-09-12 13:56:34 · 5775 阅读 · 0 评论 -
inline成员函数
上一篇文章我提到inline函数对性能可能有较大的影响,这就促使我对这个inline函数做一个综合的深入研究。总结起来使用inline函数有如下几点:注意这里讨论的只是类的成员函数。1。在类的声明里实现的函数自动为inline。 也可以在类申明外定义为inline。但是这原创 2011-09-12 14:20:05 · 1265 阅读 · 0 评论 -
表达式模板expression template
原创作品,转载请注明版权信息。这篇文章我们将学习如何把上篇文章中提高性能采用的Lazy Evaluation的技术推广到更加广义的应用。相关代码请参阅:http://en.wikipedia.org/wiki/Expression_templates这部分代码对初原创 2011-08-14 13:27:07 · 797 阅读 · 0 评论 -
运算符重载的几点原则 by sguox002
(原创作品,欢迎批评,转载请保留作者信息)对一些常见用户类型,经常要用到运算符重载,以尽量接近常规数学的方式书写C++程序,这将极大地增强C++程序的可读性和表达能力。比如说,向量算法,矩阵算法,数组操作等等。掌握几个常见的操作符的重载,对提高C++编程水平有不小的功效。原创 2011-08-13 12:02:11 · 820 阅读 · 0 评论
分享