仅仅为了获取函数名,就在函数体中嵌入硬编码的字符串,这种方法单调乏味还易导致错误,不如看一下怎样使用新的C99特性,在程序运行时获取函数名吧. 对象反射库.调试工具及代码分析器,经常会需要在运行时访问函数的名称,直到不久前,唯一能完成此项任务并且可移植的方法,是手工在函数体内嵌入一个带有该函数名的硬编码字符串,不必说,这种方法非常单调无奇,并且容易导致错误.本文将要演示怎样使用新的C99特性,在运行时获取函数名. 那么怎样以编程的方式从当前运行的函数中得到函数名呢? 答案是:使用__FUNCTI…
每个Linux系统都有一个名为的目录/tmp,该目录已挂载了单独的文件系统. 它具有称为tmpfs的特殊文件系统.这是一个虚拟文件系统,操作系统将在系统引导时自动挂载/tmp挂载点. 如果要根据应用程序要求分别挂载/tmp目录. 是的,您可以挂载它,并且应该将其添加到/etc/fstab文件中. /tmp目录是一个目录,用于在应用程序运行时保存临时文件(或会话文件). 这些临时文件的处理完成后,它们将由应用程序自动删除. 默认情况下,仅在系统启动或重新引导时清理/tmp目录. 默认情况下,完成处…
搞PLC编程多年,一直不知道状态机,学习matlab后,发现状态机编程异常方便,过去很多编程时的疑惑豁然开朗起来.今天跟大家分享一下如何在STL中使用状态机. 下面是用状态机描述的控制任务. 这个状态机较简单,那如何在STL中把它描述出来呢? 这里我们选择用JL指令...我就直接上代码了,一看便知.但JL程序只能用来表示单步状态,遇到并行状态就处理不了了..下次我们用ST语言来描述更复杂的状态机.. L     #state     //  把#state的值载入累加器       JL   …
异步编程异常处理 在同步编程中,一旦出现错误就会抛出异常,我们可以使用try-catch来捕捉异常,未被捕获的异常则会不断向上传递,形成一个简单而统一的错误处理机制.但是对于异步编程来说,异常处理一直是件麻烦的事情,所以接下来给大家介绍一下异步编程中的错误处理方式 单个异常的捕获 public static async Task ThrowExcrptionAsync(int ms, string message) { await Task.Delay(ms); throw new Except…
Handler更新UI的方式和原因以及遇到的问题 1.方式: 仅仅能通过Handler来更新UI. 代码例如以下: package com.chengdong.su.handlerdemo; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.Message; import andro…
继承中父类的初始化方式 p144页有感 一.提出问题 假设有一些类,这些类有继承关系的时候,当初始化一个子类对象,对于该类的父类而言,发生了什么呢?是仅仅只是复制了一个引用还是也会同时new一个父类对象呢? 二.解释问题 由于涉及到子类和父类之间的关系,从外部看,似乎子类拥有与父类相同的接口,而且可包含一些额外的方法和字段.但继承并非仅仅简单地复制父类的接口了事.创建子类的一个对象时,它在其中包含了父类的一个"对 象".这个对象就象我们根据父类本身创建了它的一个对象.从外部看,父类的对…
什么是json json是一种轻量级的数据交换格式,由N组键值对组成的字符串,完全独立于语言的文本格式. 为什么要使用json 在很久很久以前,调用第三方API时,我们通常是采用xml进行数据交互,但往往xml包含更多冗余的标记字符,在传输较大数据时,相较于xml,json显得更加简洁,轻量. 与此同时,javascript能更好的支持json,以及它更加便捷的解析方式,这使得我们在编程过程中能够更加方便,快捷的进行开发. 慢慢地,我们已经渐渐向json转变,越来越多的人开始使用json进行数据…
MEX文件对应的是将C/C++文件语言的编写之后 得到的相关文件加载到Matlab中运行的一种方式, 现对于Matlab 中的某些程序运行效率而言, C/C++ 代码某些算法的领域上面执行效率很高,若能够将两者结合起来使用, 将会使程序运行速率提高很多倍的. 由于MEX的实质在windows的下面就是dll 即动态链接库,因而可以采用 VC++来作为开发和调试 MEX文件的工具. 下面是具体的使用VC++ 6.0 生成一个 可以由Matlab 软件可以运行的MEX的 操作步骤, 1. 首先,通过…
转:Android中JNI编程的那些事儿(1)http://mobile.51cto.com/android-267538.htm Android系统不允许一个纯粹使用C/C++的程序出现,它要求必须是通过Java代码嵌入Native C/C++——即通过JNI的方式来使用本地(Native)代码.因此JNI对Android底层开发人员非常重要. 如何将.so文件打包到.APK 让我们 先 从最简单的情况开始,假如已有一个JNI实现——libxxx.so文件,那么如何在APK中使用它呢? 在我最…
什么是 REST REST 是 Roy Thomas Fielding [[1]](#fn1) 在 2000 年他的博士论文 [[2]](#fn2) “架构风格以及基于网络的软件架构设计” 中提出来的一个概念.REST 是 RESTransfer 的缩写,翻译过来就是 “表现层状态转化”.REST 就是 Roy 在这篇论文中提出的面向互联网的软件所应当具备的架构风格. 按照 REpresentational State Transfer 的字面意思,可以把应用看成是一个虚拟的状态机,软件提供的不…