I'd like to save all open vertical/horizontal windows? Is it possible without going to each window and executing :w!?
I have seen in many XML file has the data inside this <![CDATA[ ]]>. What is the use of this?
AMD has an ABI specification that describes the calling convention to use on x86-64. All OSes follow it, except for Windows which has it's own x86-64 calling convention. Why?
Does anyone know the technical, historical, or political reasons for this difference, or is it purely a matter of NIHsyndrome?
I understand that different OSes may have different needs for higher level things, but that doesn't explain why for example the register parameter passing order on Windows is rcx - rdx …
我正在构建一个嵌入Lua脚本引擎的C++应用程序.我正在开发Linux(Ubuntu).
我已经在我的开发机器上安装了Lua(通过安装lua5.1软件包).我可以成功运行Lua解释器(通过cmd线).
但是,在构建时,我收到以下链接错误:
/ usr/bin/ld:找不到-llua5.1
我搜索过Ubuntu论坛/软件包存储库等,但我似乎无法找到所需的软件包.有人可以帮忙吗?
PS:我还需要安装tolua ++的开发文件(我不确定哪个Ubuntu包也是必需的).
我在Ubuntu 10.0.4上
可能重复:
String.Empty和""之间有什么区别
你好
简单问题;
为什么
Textbox1.Text = String.Empty;
Run Code Online (Sandbox Code Playgroud)
比...更好
Textbox1.Text = "";
Run Code Online (Sandbox Code Playgroud)
?
我有一个关于使用typedef进行冗长模板的快速问题.关键点:我发现自己处于一种腌制状态 - 似乎没有一个将typedef放在除客户端函数本地之外的好地方.虽然有类似的SO问题(例如参见这里),但似乎没有人能够解决这个问题.请注意,这个问题并没有解决下面的typedef是否可取的问题 - 我试图简化出于说明目的.
与我一起工作时出现了我的问题boost::shared_ptr<T>.基本上,我想做以下事情:
#include <boost/shared_ptr.hpp>
typedef boost::shared_ptr<Widget> WidgetPtr;
Run Code Online (Sandbox Code Playgroud)
将此typedef放在Widget声明头中似乎很难看.这里似乎有两个注意事项:(i)如果Widget它本身没有在其成员中使用共享指针,我们添加了一个额外的include(因为我们无法转发声明boost::shared_ptr模板类 - 如果我是正确的我错误?)(ii)如果我们想在声明另一个类(称为该类Foo)期间使用此typedef,我们通过包括Widget.h而不是简单地向前声明Widget或包括WidgetFwd.h...... 来违反最佳实践...除非后者重复此类型的def .此外,boost::shared_ptr<Widget>在声明Widget自己的过程中输入deff似乎没有意义- 我们似乎在混合Widget声明,期待客户如何利用Widget 接口.
好吧,所以这很糟糕,但这更糟糕:如果我不尝试上面的某些组合,我最终会在客户端代码中出现重复的typedef,这会产生不一致(因此,可能是错误) - 整个点就是给定的Widget,WidgetPtrtypedef本身应该作为一种类型.示例:我们不想Foo使用WidgetPtr一个typedef boost::shared_ptr,而Bar使用WidgetPtr作为typedef std::auto_ptr.
另一种方法(以及我在网上讨论中提到的少数几种方法之一)是将typedef作为公共成员,Widget然后使用Widget::Ptr:
class Widget {
// ...
public:
typedef boost::shared_ptr<Widget> Ptr;
};
Run Code Online (Sandbox Code Playgroud)
同样,我不喜欢这个,因为(i)它表明指针类型在某种程度上是类的成员,并且(ii)它导致一个不稳定的接口.更糟糕的是:因为我编写的每个类都可能指向使用智能指针,我最终会追逐想象中的客户端尾部.丑陋,丑陋,丑陋.
就目前而言,我已经从这个代码库中删除了typedef(因为它们导致严重的混淆,重复)并在选定的函数中重新引入它们.这里再次出现了使用不一致的问题,但并不是那么严重.
我能想到的唯一其他解决方案 …
我在Windows XP机器上运行Async CTP的安装,虽然我没有看到任何效果.既不是VS2010pro C#编译器也不是安装程序列表.
这不会打扰我,但安装MVC3 RC2因为它与Async CTP不兼容而失败.
我发现没有办法克服这个问题.由于某种原因,Async CTP无法正确安装,因此无法卸载.
任何帮助,将不胜感激!
伙计们可以将表名从一个游标传递给另一个游标.请允许我反过来.
CURSOR R IS SELECT TABLE_NAME FROM RESOURCE ;
CURSOR S(TAB VARCHAR2) IS SELECT username from TAB where sid=1291;
Run Code Online (Sandbox Code Playgroud)
是否有另一种方法将表传递给游标.
是否可以在画布中显示html5-video?
与在画布中绘制图像的方式基本相同.
context.drawVideo(vid, 0, 0);
Run Code Online (Sandbox Code Playgroud)
谢谢!