alai04
码龄16年
  • 242,413
    被访问
  • 24
    原创
  • 745,562
    排名
  • 61
    粉丝
关注
提问 私信
  • 加入CSDN时间: 2006-01-07
查看详细资料
个人成就
  • 获得7次点赞
  • 内容获得61次评论
  • 获得6次收藏
创作历程
  • 2篇
    2021年
  • 7篇
    2011年
  • 1篇
    2010年
  • 1篇
    2007年
  • 74篇
    2006年
成就勋章
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

用Go来开发WebAssembly入门(2)

原文:https://golangbot.com/go-webassembly-dom-access/欢迎来到WebAssembly教程系列的第二篇。在本教程系列的第一篇中,我们用Go创建并暴露了一个函数给JavaScript来调用。如果你还没有看过第一篇,强烈建议先看一下再回来。在本篇中,我们将为我们的应用开发一个UI,进行错误处理,以及从Go操纵浏览器的DOM。创建UI并调用wasm函数我们先用HTML创建一个非常简单的UI。它包含一个获取输入JSON的文本区,一个提交按钮用于对JS
翻译
发布博客 2021.01.07 ·
232 阅读 ·
0 点赞 ·
0 评论

用Go来开发WebAssembly入门(1)

原文:https://golangbot.com/webassembly-using-go/欢迎来到WebAssembly教程系列的第一篇。WebAssembly是什么?JavaScript已成为浏览器可以理解的唯一语言。它经历了时间的考验,可以满足大多数web应用的性能需求。但是,当遇到3D游戏、VR、AR以及图像编辑等应用的时候,JavaScript就不那么好用了,其原因是它是一种解释性的语言。虽然像Gecko和V8这样的JavaScript引擎已具备JIT特性,但JavaScript...
翻译
发布博客 2021.01.06 ·
1430 阅读 ·
2 点赞 ·
0 评论

右值系列之六:向前,向前!

原文来自:http://cpp-next.com/archive/2009/12/onward-forward/除了提供转移语义,右值引用的另一个主要用途是解决“完美转发”。在这里,“转发”的指将一个泛型函数的实参转发至另一个函数而不会拒绝掉第二个参数可接受的任何参数,也
翻译
发布博客 2011.08.27 ·
2348 阅读 ·
1 点赞 ·
0 评论

右值系列之五:异常安全的转移

原文来自:http://cpp-next.com/archive/2009/10/exceptionally-moving/欢迎来到关于C++中的高效值类型的系列文章中的第五篇。在上一篇中,我们停留在对转移赋值最优实现的不断找寻中。今天,我们将要找到一条穿过这个“转移城市
翻译
发布博客 2011.08.25 ·
2268 阅读 ·
1 点赞 ·
0 评论

右值系列之五:异常安全的转移

原文来自:http://cpp-next.com/archive/2009/10/exceptionally-moving/欢迎来到关于C++中的高效值类型的系列文章中的第五篇。在上一篇中,我们停留在对转移赋值最优实现的不断找寻中。今天,我们将要找到一条穿过这个“转移城市
翻译
发布博客 2011.08.25 ·
362 阅读 ·
1 点赞 ·
0 评论

POSA_Volume_3_Patterns_for_Resource_Management

发布资源 2011.08.07 ·
application/octet-stream

POSA_Volume_2_Patterns_for_Concurrent_and_Networked_Objects

发布资源 2011.08.07 ·
application/pdf

右值系列之四:再论赋值

第四篇:再论赋值原文来自:http://cpp-next.com/archive/2009/09/your-next-assignment/这是关于C++中的高效值类型的系列文章中的第四篇。在上一篇中,我们讨论了如何处理右值引用函数参数并介绍了只可转移的类型。这次
翻译
发布博客 2011.08.03 ·
2492 阅读 ·
0 点赞 ·
0 评论

右值系列之三:你的下一步转移

第三篇:你的下一步转移这是关于C++中的高效值类型的系列文章中的第三篇。在上一篇中,我们介绍了C++0x的右值引用,描述了如何建立一个可转移类型,并示范了如何显式地利用可转移性。现在我们来看看转移优化的其它一些机会,开拓一些关于转移方面的新领域。复活一个右值在开始讨论进一步的优化
翻译
发布博客 2011.07.23 ·
2301 阅读 ·
0 点赞 ·
0 评论

右值系列之二:用右值引用来转移

第二篇:用右值引用来转移这是关于C++中的高效值类型的系列文章中的第二篇。在上一篇中,我们讨论了复制省略如何被用来消除可能发生的多次复制操作。复制省略是透明的,在看起来非常普通的代码中自动发生的,几乎没有任何缺点。好消息已经够多了;下面看看坏的消息:复制省略不是标准强制要求的,因
翻译
发布博客 2011.07.22 ·
2985 阅读 ·
0 点赞 ·
0 评论

右值系列之一:想要快?就传值

推荐有关右值的一系列文章,共六篇。第一篇:想要快?就传值
翻译
发布博客 2011.07.19 ·
3306 阅读 ·
11 点赞 ·
1 评论

"The Boost C++ Libraries" from Boris Schäling


"The Boost C++ Libraries" 是德国朋友 Boris Schäling 的一本关于 Boost 库的入门读物,写得很不错,值得一读。
 
原书为德文版,主页:http://www.highscore.de/cpp/boost/
英文版主页:http://en.highscore.de/cpp/boost/
中文版主页:http://zh.highscore.de/cpp/boost/
 
另外,chm格式的中文版可
原创
发布博客 2010.08.17 ·
4455 阅读 ·
0 点赞 ·
1 评论

昨天终于把《C++ Template Metaprogramming》看完了第一遍

本来想等侯捷、荣耀两位老师的中译本出来以后读中文的,对于两位老师的译作质量,完全可以放心。可惜等了许久,迟迟不见出来,在china-pub.com上很多读者已经等得不耐烦了。我也是如此,于是从去年11月底开始读这本书的E文电子版,的确有点难度,经过近两个月的努力,总算读完了第一遍,大开眼界了。这样的好书,以后肯定是要读第二遍、第三遍的。简单说一下读后感,开始第1、2章,觉得没什么新鲜的,都是S
原创
发布博客 2007.01.31 ·
7191 阅读 ·
0 点赞 ·
5 评论

学习C++模板元编程(7)

 到目前为止,我们还没有实现一个完整的编译期二分树,不过马上就会有了。紧接着上一篇的那道习题,是一道要求实现二分查找算法的题目,题目要求写出一个算法元函数binary_tree_search,在一个由binary_tree_inserter生成的treetypedef mpl::copy< mpl::vector_c , binary_tree_inserter
原创
发布博客 2006.12.24 ·
5770 阅读 ·
0 点赞 ·
2 评论

学习C++模板元编程(6)

 接下来是第六章的一道习题,要求实现一个binary_tree_inserter,以使用mpl::copy算法从其它序列生成一棵二分查找树(Binary Search Tree,即满足以下条件的一种二分树:左子树所有元素小于根,右子树所有元素大于根,且左右子树全都是二分查找树)。习题中给出的测试代码如下:
原创
发布博客 2006.12.22 ·
4151 阅读 ·
0 点赞 ·
0 评论

学习C++模板元编程(5)

 这两周学习了《C++ TMP》第五、六章,是关于TMP的序列(容器)、迭代器和算法。做了不少习题,其中最有意思的(也是花了我最多时间的)习题是用TMP实现二分查找树(Binary Search Tree)。从第五章的一道关于二分树的习题开始。题目给出一个编译期的二分树数据结构,例如:   typedef tree         double                  
原创
发布博客 2006.12.21 ·
4195 阅读 ·
0 点赞 ·
0 评论

学习C++模板元编程(4)

 《C++ Template Metaprogramming》的第四章提到了缓式评估(lazy evaluation)和短路行为(short-circuit behavior)两个概念,我编写了一个测试这两种行为的程序,但无法通过编译,还以为是编译器的问题,后来经过仔细思考,才发现是自己弄错了。我最初的理解是,缓式评估(lazy evaluation)就是if_在看到第一个参数为true时
原创
发布博客 2006.12.07 ·
4282 阅读 ·
0 点赞 ·
1 评论

学习C++模板元编程(3)

 《C++ Template Metaprogramming》的第三章举了两个例子,一个是量纲分析,另一个是高级元函数twice。量纲分析的实现比较清楚,对我来说是大开了一回眼界;但是对于高级元函数twice的实现,我觉得弄得有点太复杂了。先看看twice的定义:twice(f, x) := f(f(x)),要求提供一个twice的实现,然后从boost::add_pointer出发,得到
原创
发布博客 2006.12.05 ·
4581 阅读 ·
0 点赞 ·
1 评论

学习C++模板元编程(2)

 再看一道简单一些的习题:写一个三个参数的元函数replace_type,其中第一个参数c为任意的组合类型,该元函数将c中出现的所有x类型以y类型替换掉。例如: typedef replace_type::type t1; // int*   typed
原创
发布博客 2006.12.05 ·
5058 阅读 ·
0 点赞 ·
2 评论

学习C++模板元编程(1)

   TAOCP没看多久,觉得里面的数学知识太深了,离开学校多年,很多基础知识已记不起来了,学起来有点累,所以结束了TAOCP的学习,转到了《C++ Template Metaprogramming》。刚看完书中的第二章,关于 Type traits的,习题中有一条比较有趣,就是模仿cdecl命令将一个C++的类型用pseudo-English(伪英语)描述出来,例如:对于 char *(
原创
发布博客 2006.12.03 ·
4804 阅读 ·
0 点赞 ·
0 评论
加载更多