xmake-idea 插件深度集成了xmake和Intellij-IDEA,提供方便快速的跨平台c/c++构建。
并且它也支持其他基于Intellij的IDE环境, 例如:Clion, Android Studio等等。
注:使用此插件,需要先安装xmake,更多关于xmake的使用说明,请阅读:文档手册,项目源码:Github。
特性
快速开始
创建空工程向导
全局工程配置
运行环境配置
菜单栏工具
快捷的编译工具窗口
构建和运行
错误解析和跳转
快速开始
错误解析和跳转
继续阅读 »
你的问题在于读书太少,想的太多 —— 杨绛
昨天惊闻杨绛先生去世,突然想到了几年前看到的杨绛先生的这句话。我觉得在计算机领域理论知识更是尤为重要,现在某乎上盛行的计算机理论知识(尤指算法)无用论当真特别可悲。在这里我觉得讨论科班非科班的人都是别有用心的,重要的问题在于这些基础的训练,而不是科班非科班,我们知道很多大神都不是计算机相关专业的,但是他们的基础的深厚程度,确是很多科班出身的人无法能及的,所以说一切的问题还是要积累知识。
这学期一直在学编译原理的课程,我实实在在的感觉到了这个课程和相关内容的有趣。尤其是我在学习之前试着自己不借助任何的理论去写一个解释器,竟然也命中了不少的知识,这让
继续阅读 »
我的小需求
我在 github 上有个 repo,go 语言写的一个小程序,当时写这个程序的原因,一是练手,二是确实也想解决平时工作中的一个小痛点。使用 go 写是因为 go 语言写的程序编译后是一个不依赖于其他包或环境运行时的可执行文件,对使用者来说很方便,不必像 python 那样,首先得安装 python,又要做 pip install xxx 等一大堆工作,就算是用了 virtualenv 对环境没有太大的污染,但怎么说都没有一个独立的可执行程序来得方便。当然,还是有办法将 python 程序也弄成一个自包含的可执行文件,但太折腾。
继续阅读 »
/* #include */
/* #include */
int main(){
char *c = malloc(10);
c[0] = 'a';
printf("hi, ");
printf("%s\n", c);
free(c);
return 0;
}
为什么这个程序缺了头文件, 依然可以正常编译运行, 并且有正确的结果?
继续阅读 »
{:toc #zhuru}
运行时注入与硬编码注入是相对的。硬编码注入在编译时就已经确定了,运行时注入则可能需要一些外部的参数来解决。
Spring提供的两种在运行时求值的方式:
属性占位符(Property placeholder)
Spring表达式语言(SpEL)
继续阅读 »
本文将介绍如何在 Windows 上配置 Jekyll 本地编译环境,实现网站的本地预览。我的机器是 Windows 10 64位,需要先后安装 Ruby、DevKit、Python 等。至于 Python 我建议使用 miniconda 或者 anaconda,这个使用起来还是比较方便的。
继续阅读 »
LTUI是一个基于lua的跨平台字符终端UI界面库。
此框架源于xmake中图形化菜单配置的需求,类似linux kernel的menuconf去配置编译参数,因此基于curses和lua实现了一整套跨平台的字符终端ui库。
而样式风格基本上完全参照的kconfig-frontends,当然用户也可以自己定制不同的ui风格。
另外,LTUI是完全跨平台的,windows上的terminal终端也是完全支持的,在windows上ltui会采用pdcurses来进行窗口绘制。
Github
更新内容
新版本中,我们改进了对鼠标的支持,实现对所有控件的鼠标事件点击响应,这里我们非常感谢 @laelnasan 贡献。
另外我们新
继续阅读 »
背景
在日常开发中,有一些常见的环境,比如Dev、UAT、预发、生产等,当然并不是每个公司都是这样。有时候开发环境一切正常,但是到线上的UAT环境或预发等等会出现各种问题,那么你是不是经常需要进行本地修改代码、提交、编译、打包、上传、运行、查看日志等这一系列步骤呢?这种方式不仅低效、繁琐而且容易引入诸多不可控的因素,比如你在任意一个环节出现问题,可能都会影响到程序最终的运行结果。而如果能有一种神器,可以对正在运行的程序,进行动态追踪、错误诊断、性能剖析等,是不是无形中为你延长了生命呢?如果你之前不知道也就罢了,然而如果你看到这里了,却还不学习的话,就是你自己的锅了。
Java运行时追踪工具
常见的动态追踪工具有BTrace、H
继续阅读 »
初识 Java 虚拟机
何为虚拟机
何为虚拟机,说白了就是工作在 PC 或者移动手机操作系统之上的一款软件,有的虚拟机能完整的虚拟某个操作系统的环境比如 VMWare,Parallels Desktop,让你能在 Mac 系统上使用 Windows,Windows 系统里面使用 Linux。而有的虚拟机呢,则用来解释执行某个计算机程序,让你无关它的底层实现,你只需要关注上层如何使用它提供的编程套件就好,正所谓:一次编译,到处运行,比如 Java 虚拟机。
继续阅读 »
Java 注解 (Annotation)
Java 注解,指的是代码里边的特殊标记,可以在编译、运行时被读取,并执行相应的处理。Annotation 可用于修饰包、类、构造器、方法、变量等。
more
Annotation 类型
此处来一张网上的图 (可在新标签页中放大查看)
转自深入理解Java:注解(Annotation)
基本 Annotation
Java中5个基本的注解分别为:
- @Override ———— 用来限定子类重写父类的方法。
- @Deprecated ———— 标记已经过时的方法。
- @SuppressWarnings ———— 抑制编译器的警告。
- @SafeVararg
继续阅读 »