小编Jon*_*Jon的帖子

用于类比较的C++ dynamic_cast vs typeid

可能重复:
C++等效于instanceof

我想知道dynamic_casttypeid之间的区别仅在于类比较(除了允许访问子类的方法的dynamic_cast和仅用于类比较的typeid).我发现一个两年前的StackOverflow问同样的问题: C++相当于instanceof.然而,它已经两岁了,我不想去找一个旧帖子(而且我不确定什么时候出现了typeid),所以我想重新问同一个问题,但有点不同.

基本上,我有A类和B类,其是正在采取在抽象类C. C类的子类都作为参数的方法和我想,以确定是否类C是真的A类或B类两者typeid的dynamic_cast正常工作,所以这更多的是最佳实践/表现的问题.我在猜测:

A* test = dynamic_cast<A*> someClassCVar
if (test != 0) { //it is of class A }
Run Code Online (Sandbox Code Playgroud)

要么

if (typeid(someClassCVar) == typeid(A)) {
   //it is of class A
}
Run Code Online (Sandbox Code Playgroud)

编辑:对不起,我忘了包含这些信息.ActiveMQ CMS文档声明使用dynamic_cast,但我认为这仅仅是因为它假定用户希望访问特定于子类的方法.对我来说,如果只需要进行类比较,似乎typeid会有更好的性能:http: //activemq.apache.org/cms/cms-api-overview.html

c++ casting

22
推荐指数
1
解决办法
2万
查看次数

jQuery Mobile中的持久标头

无法找到一种方法来为我的旧问题提供赏金,所以我重新发布它,因为它可能是一个错误.

简短版本:我希望PhoneGap + JQM应用程序中的持久标头在页面转换之间保持原位(从不移动),就像页脚可以设计的那样.

长版:首先,我是jQuery和JQM的新手,所以请指出我所犯的任何新错误.

我正在尝试在应用程序中的不同页面之间保留一个标题.当用户在页面之间转换时,它必须像持久的页脚一样保持在原位.使用data-role ="footer"data-id ="(某些一致的id)"data-position ="fixed"来实现持久页脚.它运作得相当好(随机故障,因为它错位,然后在几秒后自动修复).有关我正在寻找的内容的更多信息,请参阅此处的"持久页脚":http: //jquerymobile.com/test/docs/#/test/docs/toolbars/docs-footers.html

并在下面的链接中查看持久页脚的示例.了解如何选择页脚中的项目转换为全新页面,但页脚不会移动:http: //jquerymobile.com/test/docs/#/test/docs/toolbars/footer-persist-a.html

现在我正在尝试做同样的事情,但我希望它在应用程序的顶部而不是底部.我尝试过以下的事情:

  • 将页脚移动到页面顶部(不知道jQuery中要捕获的标记.尝试使用几个jQuery类的div.(jQuery类),但没有一个工作.我使用FireBug来确定它是"顶级"CSS属性需要改变.

每页上的HTML:

<div data-role="footer" data-position="fixed" data-id="header">
<img src="images/bgheader.png" />
</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript:

$('div.ui-footer').css('top', '0px');
$('div.ui-footer-fixed').css('top', '0px');
$('div.fade').css('top', '0px');
$('div.ui-fixed-overlay').css('top', '0px');
$('div.ui-bar-a').css('top', '0px');
Run Code Online (Sandbox Code Playgroud)
  • 使用data-role ="header"(不像页脚那样持久).这个方法将创建我想要的标题(因为我覆盖了一些CSS),但是当我在页面之间转换时,它不会将标题保持在顶部.JQM文档也没有声明它们支持持久标头,而它确实声明它支持持久页脚:

每页上的HTML:

<div data-role="header" data-position="fixed" data-id="header" id="header" data-backbtn="false">
<img src="images/bgheader.png" />
</div>
Run Code Online (Sandbox Code Playgroud)

mobile jquery header persistent

10
推荐指数
1
解决办法
2万
查看次数

操纵jQuery Mobile Footer的定位

我有一个问题已被查看,但没有答案或评论,所以我想我会尝试简化我的问题.对于那些对我的整体问题感到好奇的人,请参阅jQuery Mobile中的链接:持久标题

无论如何,我的问题是如何强制JQM页脚位于顶部而不是底部?这是JQM页脚的代码.它在页面转换过程中保持良好状态,但它位于页面底部,我需要它在头部:

<div data-role="footer" data-position="fixed" data-id="navBar" id="navigationBar">
    <img src="images/bgheader.png" />
</div>
Run Code Online (Sandbox Code Playgroud)

我已经开始考虑用Sencha重建它,但由于我有明天的截止日期,我认为这不可行.此持久性标头是目前唯一缺少的(当页面由于某种原因转换时,JQM标头不会停留).

mobile jquery position footer

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

jquery ×2

mobile ×2

c++ ×1

casting ×1

footer ×1

header ×1

persistent ×1

position ×1