小编Lig*_*ica的帖子

如何在新窗口中打开链接?

我有一个特定链接的点击处理程序,在里面我想做类似以下的事情:

window.location = url
Run Code Online (Sandbox Code Playgroud)

我需要这个在新窗口中实际打开网址,我该怎么做?

javascript jquery

93
推荐指数
4
解决办法
29万
查看次数

将HTML标记转义为HTML实体的最快方法?

我正在写一个Chrome扩展程序,包括做了很多消毒的字符串:下面的工作可能通过转换包含HTML标签,<,>&&lt;,&gt;&amp;分别.

(换句话说,和PHP一样htmlspecialchars(str, ENT_NOQUOTES)- 我认为没有必要转换双引号字符.)

这是迄今为止我发现的最快的功能:

function safe_tags(str) {
    return str.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;') ;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我必须一次性运行几千个字符串时,仍然存在很大的滞后.

任何人都可以改进吗?它主要用于10到150个字符之间的字符串,如果这有所不同的话.

(我有一个想法是不打扰编码大于号 - 这会有任何真正的危险吗?)

html javascript regex string performance

93
推荐指数
7
解决办法
13万
查看次数

如何在标准字符串中搜索/查找和替换?

有没有办法用另一个字符串替换所有出现的子字符串std::string

例如:

void SomeFunction(std::string& str)
{
   str = str.replace("hello", "world"); //< I'm looking for something nice like this
}
Run Code Online (Sandbox Code Playgroud)

c++ replace std

91
推荐指数
5
解决办法
10万
查看次数

会使用goto泄漏变量吗?

goto跳过代码而不调用析构函数和事物是真的吗?

例如

void f() {
   int x = 0;
   goto lol;
}

int main() {
   f();
lol:
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

会不会x泄露?

c++ goto

91
推荐指数
1
解决办法
7867
查看次数

CRTP避免动态多态

如何在C++中使用CRTP来避免虚拟成员函数的开销?

c++ virtual templates crtp

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

不要回应cURL

当我使用这段代码时:

$ch = curl_init($url);
$statuses = curl_exec($ch);
curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

我得到了我想要的东西,但是如果我只是使用它 - $statuses被回显到页面上.

我怎么能阻止这个?

php curl

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

使用JavaScript获取用户代理

我想获得一个脚本,可以抓取用户的用户代理并将其支持到属性.

我正在制作网站问题联系表单,我通常需要知道用户使用的是什么浏览器.如何检测用户代理字符串并将其作为输入元素的值.

我的HTML看起来像:

<input type="hidden" id="UserAgent" name="User Agent" />
Run Code Online (Sandbox Code Playgroud)

我希望将用户代理作为value属性添加到它,因此它看起来像:

<input type="hidden" id="UserAgent" name="User Agent" value="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.53.11 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10" />
Run Code Online (Sandbox Code Playgroud)

javascript jquery user-agent attributes prop

80
推荐指数
2
解决办法
12万
查看次数

为什么功能模板不能部分专用?

我知道语言规范禁止功能模板的部分特化.

我想知道为什么禁止它的理由?它们没用吗?

template<typename T, typename U> void f() {}   //allowed!
template<> void f<int, char>()            {}   //allowed!
template<typename T> void f<char, T>()    {}   //not allowed!
template<typename T> void f<T, int>()     {}   //not allowed!
Run Code Online (Sandbox Code Playgroud)

c++ language-design partial-specialization template-specialization function-templates

78
推荐指数
4
解决办法
2万
查看次数

在C++中的类初始值设定项中初始化const数组

我在C++中有以下类:

class a {
    const int b[2];
    // other stuff follows

    // and here's the constructor
    a(void);
}
Run Code Online (Sandbox Code Playgroud)

问题是,如何在初始化列表中初始化b,因为我无法在构造函数体内初始化它,因为b是const

这不起作用:

a::a(void) : 
    b([2,3])
{
     // other initialization stuff
}
Run Code Online (Sandbox Code Playgroud)

编辑:这个例子就是我可以b为不同的实例设置不同的值,但是已知这些值在实例的生命周期内是不变的.

c++ array-initialize initialization c++03

73
推荐指数
5
解决办法
12万
查看次数

从理论上讲,C++实现可以并行化两个函数参数的评估吗?

给出以下函数调用:

f(g(), h())
Run Code Online (Sandbox Code Playgroud)

因为函数参数的计算顺序是不确定的(仍然是在C++ 11,据我所知的情况下),可以实现理论上执行g()h()并行?

这种并行化只能起作用g并且h已知是相当微不足道的(在最明显的情况下,仅访问其本体的本地数据)以便不引入并发性问题但是,除了该限制之外,我看不到任何禁止它的内容.

那么,标准是否允许它?即使只是按照as-if规则?

(在这个答案中,Mankarse声称不然;但是,他没有引用标准,而我的通读[expr.call]并没有透露任何明显的措辞.)

c++ language-lawyer

68
推荐指数
2
解决办法
2388
查看次数