问题列表 - 第48433页

为什么重载运算符 - >()有用?

我在C++编程语言一书中看到了以下示例

class Ptr {
     X* operator->( );
};

 voide f(Ptr p)
 {
   p->m=7;
   X* q1 = p->;
   X* q2 = p.operator->();
 }
Run Code Online (Sandbox Code Playgroud)

该书声称1)类Ptr的对象可以用于以与指针使用方式非常类似的方式访问类X的成员.2)将对象p转换为指针p.operator - >()不依赖于指向的成员m.这就是operator - >()是一元后缀运算符的意义.

对于第一点,我不明白为什么我们需要这种设计,或者在哪种情况下应该使用这种设计.对于第二点,我对作者想要提供的信息感到困惑.

谢谢.

c++ operator-overloading

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

我应该使用"全球"还是"自我".对于Python中的类范围变量?

这两个代码块都可以工作.有没有"正确"的方法来做到这一点?

class Stuff:
    def __init__(self, x = 0):
        global globx
        globx = x
    def inc(self):
        return globx + 1

myStuff = Stuff(3)
print myStuff.inc()
Run Code Online (Sandbox Code Playgroud)

打印"4"

class Stuff:
    def __init__(self, x = 0):
        self.x = x
    def inc(self):
        return self.x + 1

myStuff = Stuff(3)
print myStuff.inc()
Run Code Online (Sandbox Code Playgroud)

还打印"4"

我是一个菜鸟,我在课堂上处理很多变量.开始想知道为什么我把"自我".在一切可见的面前.

谢谢你的帮助!

python variables class function

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

检查是否已清除超时?

我想知道有没有办法判断是否仍然设置超时

var t=setTimeout("alertMsg()",3000);
Run Code Online (Sandbox Code Playgroud)

当你清除它时我觉得它会像未定义的那样.但它似乎有一些不被清除的id.

javascript

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

添加段落标签以在wordpress中发布内容?

我正在使用get_pages函数获取一些页面并回显页面内容,如:$page->post_content,但相反the_content(),这样wordpress不会自动添加p标签,有没有办法在这里添加它们?

提前致谢

html php wordpress paragraphs

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

如何使用nl2br()来处理带有'\ r \n'的字符串?

我在表单提交时从admin到textarea检索存储在数据库中的产品描述值.当我从数据库中选择描述时,我得到$description = $row['description'];并希望在主页上回显$ description:echo nl2br($description);但我看到的是"\r\n"字符,而不是创建新行.从我在这里和网上找到的,你的字符串必须在双引号之间使用,如下所示:

echo nl2br("Hello, \r\n This is the description");
Run Code Online (Sandbox Code Playgroud)

现在,$description来自数据库的值实际上是在"Hello, \r\n This is the description"我的脚本中我必须像这样使用它:

echo nl2br($description);
Run Code Online (Sandbox Code Playgroud)

这不是br的,而是输出\r\n.那么,根据我的经验,我可以做什么,我不能在这里使用双引号.

php mysql nl2br

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

5
推荐指数
1
解决办法
2706
查看次数

Eclipse插件开发:如何向编辑器添加功能

我最近几天一直在尝试扩展默认编辑器(java,xml,所有这些)的功能,

我想要做的是在每个编辑器的侧面添加一个带有文本的大标尺.

示例:默认编辑器页面如下所示:

|-----------|
|source     |
|code       |
|           |
|-----------|
Run Code Online (Sandbox Code Playgroud)

但我希望它像这样

|------|----|
|source|    |
|code  |line|
|      |text|
|------|----|
Run Code Online (Sandbox Code Playgroud)

我也不能使用视图,因为我的标尺中的文本对应于某一行,并且必须与源代码一起滚动.

我试图通过实现IEditorActionDelegate来实现这一点,因为我不想要新的编辑器,但是要添加功能,但我找不到任何解决方案.


想要提一下,为了实现我的解决方案,我扩展了AbstractContributedRulerColumn

public class MyRuler extends AbstractContributedRulerColumn {
 ....
}
Run Code Online (Sandbox Code Playgroud)

plugins eclipse-pde eclipse-plugin

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

如何在git中更改特定的字体颜色?

我希望将git中的"红色"字体颜色更改为更接近粉红色的颜色.我倾向于让我的显示器非常暗淡,每当我查看差异时,黑色背景上的红色字体很难读.那么,有没有办法指定我希望它为红色使用不同的颜色,最好使用单个命令?

我在Win7上使用msysgit和MINGW32.

git msysgit mingw32

18
推荐指数
1
解决办法
5189
查看次数

jquery ui拦截器中的多个块?

我正在使用这个插件.

但它似乎使用全局变量

$.blockUI();
$.unblockUI();
Run Code Online (Sandbox Code Playgroud)

在那里我可以有这个块的不同实例.

 $(document).ajaxStart(function (e)
 {
          $.blockUI(); //setup with a loading msg.
  });

 $(document).ajaxStop(function (e)
        {       
            $.unblockUI();

        })


var ajax = // ajax setup stuff


// 1.5 way of doing it
ajax .success(function (response)
            {
               var valid = checkIfValid(response); // check if valid
               if(valid)
               {
                      $.blockUI(); // setup with a save message
               }

            });
Run Code Online (Sandbox Code Playgroud)

这就是我所拥有的.我放

$.blockUI();
Run Code Online (Sandbox Code Playgroud)

保持简单,没有选项,但在我的真实代码中,我有消息和其他选项设置.

所以现在的问题是,一旦成功完成,ajax停止被调用并解锁所有内容.我只希望清除ajax中启动的那个而不是有效的那个.

所以我需要不同的实例.

javascript jquery jquery-plugins jquery-1.5

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

jQuery 1.5.1 vs 1.4.4怪异

当我将jQuery从1.4.4升级到1.5.1时,我遇到了一些奇怪的错误.也许你们可以解释我需要改变什么或为什么新版本不起作用.

在1.4.4中,我有以下代码

<div class="navlink home" data-link="home">
    <span class="top">Home</span>
</div>
<div id="index-03">
</div>
<div class="navlink resume" data-link="resume">
    <span class="top">Resume</span>
</div>
<div id="index-05">
</div>
<div id="index-06">
</div>
<div class="navlink portfolio" data-link="portfolio">
    <span class="bottom">Portfolio</span>
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

$(".navlink").hover( 
    function () { 
        $(this).delay(100).animate({backgroundPosition: "-100% 0"}, 400);
        $(this).find("span").css("textDecoration","underline");
    },
    function () {
        $(this).queue("fx", []);
        $(this).animate({backgroundPosition: "0% 0%"}, 400);
        $(this).find("span").css("textDecoration","none");
    }
);
Run Code Online (Sandbox Code Playgroud)

哪个工作得很好.

但是当我通过更改标题中的这一行来切换jQuery版本时

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

上面的代码退出动画,背景图像就消失了.

这是一个jsFiddle,它显示了发生了什么,只是改变了1.4.4和1.5.1之间的jQuery版本

http://jsfiddle.net/fUXZ4/ - 1.4.4

http://jsfiddle.net/3APCd/ - 1.5.1

这是一个关于我发生了什么的视频:http://img.zobgib.com/2011-03-07_1905.swf

css jquery

6
推荐指数
1
解决办法
1732
查看次数