小编ani*_*bey的帖子

std :: bind如何与成员函数一起使用

我正在使用std::bind但是当我们将它与成员类函数一起使用时,我仍然不知道它是如何工作的.

如果我们有以下功能:

double my_divide (double x, double y) {return x/y;}
Run Code Online (Sandbox Code Playgroud)

我完全理解下一行代码:

auto fn_half = std::bind (my_divide,_1,2);               // returns x/2

std::cout << fn_half(10) << '\n';                        // 5
Run Code Online (Sandbox Code Playgroud)

但是现在,通过以下代码我们有一个绑定到成员函数我有一些问题.

struct Foo {
    void print_sum(int n1, int n2)
    {
        std::cout << n1+n2 << '\n';
    }
    int data = 10;
};

Foo foo;

auto f = std::bind(&Foo::print_sum, &foo, 95, _1);
f(5);
Run Code Online (Sandbox Code Playgroud)
  • 为什么第一个参数是参考?我想得到一个理论上的解释.

  • 第二个参数是对象的引用,对我来说是最复杂的部分需要理解.我认为这是因为std::bind需要一个背景,我是对的吗?总是这样吗?std::bind当第一个参数是成员函数时,是否有某种实现要求引用?

c++ std stdbind c++11

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

为什么 std::iter::Peekable::peek 可变地借用 self 参数?

我很难理解为什么该peek()方法会可变地借用 self 参数。

文档

“返回对 next() 值的引用,而不推进迭代器。”

既然它没有推进迭代器,那么借用可变参数背后的意义是什么?

我查看了它的实现peek()并注意到它正在调用一个next()方法。

#[inline]
#[stable(feature = "rust1", since = "1.0.0")]
pub fn peek(&mut self) -> Option<&I::Item> {
    let iter = &mut self.iter;
    self.peeked.get_or_insert_with(|| iter.next()).as_ref()
}
Run Code Online (Sandbox Code Playgroud)

是因为该next()方法的使用,该peek()方法被设计为可变借用,还是该peek()方法背后确实需要可变借用的另一种语义?

peek()换句话说,当调用该方法时,什么会发生变化?

rust

13
推荐指数
1
解决办法
620
查看次数

R如何安装指定版本的bioconductor包?

我想使用的当前版本的包在 bioconductor 上失败了。然而,旧版本曾经可以工作。
我想知道如何安装特定版本的 bioconductor 包?
提前致谢。

在我的例子中,这个包叫做 biomaRt,失败的版本是 2.34.2,而 2.34.0 是成功的。

r bioconductor biomart

8
推荐指数
2
解决办法
6400
查看次数

R 中是否有等效的 ast.literal_eval python 方法

evalfunction不同,ast.literal_evalfunction安全地计算表达式节点或包含 Python 文字或容器显示的字符串。提供的字符串或节点只能由以下 Python 文字结构组成:字符串、字节、数字、元组、列表、字典、集合、布尔值和无。
即它只评估包含文字或容器的字符串,它不评估包含代码的字符串!

我想知道 R 中是否有与literal_eval 方法等效的方法?提前致谢!

参考: ast.literal_eval 函数

r

7
推荐指数
1
解决办法
372
查看次数

在android中更改应用程序标题的字体

我有一个字体,我想在android中更改动作栏标题的字体.有没有办法像这样设置标题字体?

this.setTitle(myTitle.toUpperCase()); 
this.setTypefaceofTitle(tf);
Run Code Online (Sandbox Code Playgroud)

这不是一个复制问题,这个链接上的方法(如何在ActionBar标题中设置自定义字体?)不起作用.当我尝试它们时,eclipse会给出错误:java.lang.noSuchMethodError

java eclipse android titlebar

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

渲染期间引发异常:RelativeLayout中不存在循环依赖关系异常详细信息记录在窗口>显示视图>错误日志中

突然eclipse开始给出那个错误.

"渲染期间引发异常:RelativeLayout中不存在循环依赖关系异常详细信息记录在窗口>显示视图>错误日志中"

这是我的xml文件.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/relative_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="0dp"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
tools:context=".Generate" >


    <View
    android:id="@+id/view2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/generatetv1"
    android:layout_alignTop="@+id/generatetv1"
    android:layout_centerHorizontal="true"
    android:background="#90000000" />

<View
    android:id="@+id/view1"
    android:layout_width="wrap_content"
    android:layout_height="60dp"
    android:layout_alignBottom="@+id/generate_dukkan"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/generate_direnisci_adi"
    android:background="@drawable/extension" />

<Button
    android:id="@+id/generatebtn3"
    android:layout_width="fill_parent"
    android:layout_height="40dp"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_marginBottom="20dp"
    android:background="@drawable/button"
    android:text="Buradan Git" />

<Button
    android:id="@+id/generatebtn2"
    android:layout_width="fill_parent"
    android:layout_height="40dp"
    android:layout_above="@+id/generatebtn1"
    android:layout_marginBottom="4dp"
    android:background="@drawable/button"
    android:text="Button2" />

<Button
    android:id="@+id/generatebtn1"
    android:layout_width="fill_parent"
    android:layout_height="40dp"
    android:layout_above="@+id/generatebtn3"
    android:layout_marginBottom="16dp"
    android:background="@drawable/button"
    android:text="generate_dukkan" />

<TextView
    android:id="@+id/generate_time"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignRight="@+id/generatetv1"
    android:text="DigitalClock"
    android:textColor="#FFFFFF"
    android:textSize="20dp" />

<TextView
    android:id="@+id/generatetv1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/generatebtn2"
    android:layout_below="@+id/generate_puan"
    android:textColor="#FFFFFF"
    android:layout_marginTop="80dp" …
Run Code Online (Sandbox Code Playgroud)

java xml eclipse android

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

Pandas multiindex数据帧选择数据

下面给出这个数据帧,
有没有一种方法来检索其列开始值> = 20000和停止值<= 40000?其中start和stop是列的名称(而不是值).

多索引数据框

python dataframe pandas

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

标签 统计

android ×2

eclipse ×2

java ×2

r ×2

bioconductor ×1

biomart ×1

c++ ×1

c++11 ×1

dataframe ×1

pandas ×1

python ×1

rust ×1

std ×1

stdbind ×1

titlebar ×1

xml ×1