标签: reference

为什么无法引用无效?

为什么无法引用void?我在C++标准中找到的唯一内容就是这一行,见8.3.2.1

指定类型"对cv void的引用"的声明符是不正确的.

为什么会那样?为什么我不能写一个接受一个"通用"的函数void&

为了清楚起见,我没有任何有用的应用程序,使用引用void可能比使用模板更好,但我只是好奇禁止这个结构的基本原理.


为了澄清一点,我理解使用"按原样"引用"无效"将与取消引用指向void的指针一样毫无意义.不过,我可以把它转换为参考TO- sometype.这时候为了使用它,我能不能?事实上,我不明白为什么下面的代码片段可以工作......

void foo(void *data)
{
    int *i = reinterpret_cast<int*>(data);
    // do something with i
}
Run Code Online (Sandbox Code Playgroud)

......虽然这个不能:

void foo(void &data)
{
    int &i = reinterpret_cast<int&>(data);
    // do something with i
}
Run Code Online (Sandbox Code Playgroud)

c++ reference void-pointers

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

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

项目参考与DLL参考 - 哪个更好?

我知道关于这个问题还有其他问题,我已经看过这个问题了,但是我希望看到更多关于这方面的讨论和信息 - 将项目添加到一个更好的做法解决方案并引用该项目,或者添加对.dll的引用?

reference visual-studio

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

输出参数并通过引用传递

我加入了一个新的小组,其编码指南(对我而言)似乎过时了.

但只是在没有有效备份的情况下反对机器不会让我无处可去.
所以我转向SO,看看我们是否能够理性的理由支持/反对(嘿,我的选择可能是错的,所以我们会赞赏论证的双方).

争论的准则是:

提示:对返回参数使用指针而不是引用.

void Func1( CFoo &Return );  // bad  
void Func2( CFoo *pReturn ); // good  
Run Code Online (Sandbox Code Playgroud)

理由:
使用引用时,它看起来与值相同.调用该函数后,调用者可能会惊讶于他的值已被更改.被调用者可能会无意中修改该值而不会影响调用者的值.通过使用指针,调用者和被调用者都清楚可以更改该值.在代码审查中使用引用可能特别容易引起误解.

c++ pointers coding-style reference

39
推荐指数
6
解决办法
5万
查看次数

R中S4对象,方法和编程的来源

由于我经常遇到需要S4编程来保持概述的情况,我收集了很多关于S4对象,方法和编程的资料.我在这里列出了它们作为参考.请添加您自己的来源.

在网上

图书

  • 用于数据分析的软件 - 使用R编程(J. Chambers):一个经典的,虽然没有在各处评论,但是包含S4的大部分内容
  • 生物信息学的R编程(R. Gentleman):专门针对与Bioconductor合作,完全基于S4.但它提供了广泛的概述,对许多其他人也很有用.

PS:如果有人找到社区复选框,您可以将其设为社区拥有的帖子.不知何故,我再也无法在编辑窗口中找到它......

r reference manual s4

39
推荐指数
1
解决办法
6469
查看次数

.net引用的特定版本是真还是假?

我们是两家在同一个应用程序中处理同一项目的公司.每周我们交换我们的程序集(不是代码)并引用彼此的dll.

specificversion添加对项目的引用时的最佳实践是什么?具体来说,我们什么时候应该使用一个specificversion值,true在什么情况下我们应该使用它false.

.net dll reference

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

存储对值类型的引用?

我正在编写一个"监视器"对象,以方便我的应用程序的调试.可以在运行时从IronPython解释器访问此Monitor对象.我的问题是,在C#中是否可以存储对值类型的引用?说我有以下课程:

class Test
{
    public int a;
}
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式存储"指针"到"a",以便能够随时检查它的价值吗?是否可以使用安全和托管代码?

谢谢.

c# reference

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

指针和引用之间的差异作为线程参数

这是一个例子:

#include<iostream>
#include<thread>
using namespace std;

void f1(double& ret) {
   ret=5.;
}

void f2(double* ret) {
   *ret=5.;
}

int main() {
   double ret=0.;
   thread t1(f1, ret);
   t1.join();
   cout << "ret=" << ret << endl;
   thread t2(f2, &ret);
   t2.join();
   cout << "ret=" << ret << endl;   
}
Run Code Online (Sandbox Code Playgroud)

输出是:

ret=0
ret=5
Run Code Online (Sandbox Code Playgroud)

用gcc 4.5.2编译,有和没有-O2标志.

这是预期的行为吗?

这个节目数据是否免费比赛?

谢谢

c++ multithreading reference c++11 stdthread

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

C++中的"重新绑定"引用是否合法?

C++中的以下内容是否合法?

据我所知,Reference有一个简单的析构函数,所以它应该是合法的.
但我认为参考不能合法反弹......可以吗?

template<class T>
struct Reference
{
    T &r;
    Reference(T &r) : r(r) { }
};

int main()
{
    int x = 5, y = 6;
    Reference<int> r(x);
    new (&r) Reference<int>(y);
}
Run Code Online (Sandbox Code Playgroud)

c++ reference placement-new language-lawyer

38
推荐指数
3
解决办法
1631
查看次数

C#反射并找到所有引用

给定一个DLL文件,我希望能够找到该DLL文件中所有方法的调用.我怎样才能做到这一点?

从本质上讲,我如何以编程方式执行Visual Studio已经执行的操作?

我不想使用像.NET Reflector这样的工具来做到这一点,但反射很好,可能是必要的.

c# reflection reflector reference

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