小编joh*_*ers的帖子

如何删除已安装的elpa包

这很奇怪,list-packages缓冲区显示"可用"作为实际安装的某些软件包的状态.该栏目不应该显示"已安装"吗?当我单击一个时,会打开一个新缓冲区以通知我该软件包已安装,但不提供卸载选项.相比之下,我没有安装的其他软件包显示为"可用",旁边有"安装"选项.

如何卸载已安装的软件包?我目前正在寻找的那个是平滑滚动的.

emacs

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

为什么包含警卫不会阻止多个函数定义?

链接器报告重复的符号:

#ifndef testttt
#define testttt

void anything(){
    std::cout<<"hellooooooo";
}

#endif
Run Code Online (Sandbox Code Playgroud)

因为它在包含防护内部,所以我希望这个函数只定义一次.但显然不是.

我知道我可以把static它放在它前面然后它会工作(我仍然觉得具有讽刺意味,因为静态应该给它内部链接,但该函数可以从多个cpp文件中使用).

所以我想我的两部分问题是:1)为什么包含警戒不会阻止此功能的多个定义,就像它们对其他标题项一样,2)为什么这个static词在静态应该阻止名称可见时解决这个问题在其他翻译单位?我添加它,我实际上可以从包含此头文件的任何地方调用此函数.

c++

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

按键字母顺序排序NSDictionary值

我可以获取按值排序的字典键数组,但是如何获取按字典键排序的值数组?我一直在寻找没有运气的地方.任何帮助赞赏.

objective-c nsdictionary swift

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

默认情况下通过引用传递的数组?

我正在读一本C++书,上面写着:

C++通过引用将数组传递给函数 - 被调用的函数可以修改调用者原始数组中的元素值.

它指的是这样的情况:

int hourlyTemperatures[ 24 ]; 
modifyArray( hourlyTemperatures, 24 );
Run Code Online (Sandbox Code Playgroud)

但是,这是香草C阵列指针在这里工作,对吧?没有使用C++"引用"技术,传递的是按值指针,在这种情况下,是指向数组的第一个元素的指针.最终的结果是函数确实可以访问完整的原始数组,就像引用一样,但实际上并没有通过引用传递,对吧?

从这本Prentice Hall书中: 这本书有问题

c c++

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

Qt信号和插槽:权限

SO上的尊重答案与实际的Qt文档之间存在差异.

我已经阅读了这个问题,我想进一步澄清一下.有人可以证实:

  • 信号始终是protected,因此它只能由类或其任何子类发出.我不确定这是真的; 上面的问题显示了支持这一陈述的答案.但Qt文档说:Signals are public access functions and can be emitted from anywhere, but we recommend to only emit them from the class that defines the signal and its subclasses.那是什么?
  • 插槽只是功能,因此可以是公共的,私有的或受保护的.显然,如果插槽是公共的,那么外部类能够控制您的类是否将其自身信号之一连接到其自己的插槽之一.然而,SO信息再次与文档不同,文档说:a signal emitted from an instance of an arbitrary class can cause a private slot to be invoked in an instance of an unrelated class.这意味着private信号/插槽机制不尊重它?
  • 使用signal关键字时,public,private,protected这两个词没有用处
  • 发出的信号始终可用于所有其他类,也就是说,任何其他类可能始终连接到该信号(无论其发出信号的权限如何).
  • 尽管所有类都可以查看所有信号,但您仍然可以使用两个具有相同名称信号的类,因为该connect函数将类名称作为信号前缀(即SomeClass::itsSignal …

c++ inheritance qt signals-slots qt-signals

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

是否有必要使用模板参数来引用同一类内部定义?

这是必要的:

 template <typename T>
 class A{
   T*point;
   A<T> someFunction(){} //instead of returning just "A", not "A<T>"
 }
Run Code Online (Sandbox Code Playgroud)

someFunction隐式返回与A正在定义的类相同的类型吗?因为在课外,你只能将这种类型称为A<float>或类似,所以我认为这在课堂上也是必要的.我发现它在没有<>的情况下进行编译,所以如果省略括号是一个安全的习惯,这就太奇怪了.

c++

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

Objective C"#if"语法

#if当我看一些课时,我看到"pound if"或语法有点困惑.

例如:

#if someConstant == someNumber
  do something
#elif
  etc
Run Code Online (Sandbox Code Playgroud)

与:

if (someConstant == someNumber) 
   do something
else if {
   do more stuff
}
Run Code Online (Sandbox Code Playgroud)

有什么区别,为什么要使用#if

syntax objective-c c-preprocessor

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

UIView不透明的属性

opaque默认情况下,UIView 的属性始终设置为"YES".但是UIView类引用说明了这一点:

预计不透明视图将使用完全不透明的内容填充其边界 - 也就是说,内容的alpha值应为1.0.如果视图不透明并且未填充其边界或包含完全或部分透明的内容,则结果是不可预测的.

由于更改alpha视图非常常见,尤其是在转换或动画期间,因此上述语句意味着如果您要更改属性opaque,NO则必须始终手动设置alpha.

但我从未手动调整过opaque,也没有任何明显的症状.有必要考虑这个问题吗?

iphone objective-c uiview ipad

19
推荐指数
1
解决办法
9371
查看次数

ostringstream给了我隐式实例化错误

我正在尝试这个答案中提供的优雅解决方案,但无论我尝试什么,我都无法通过Implicit instantiation of undefined template此行的错误:

std::ostringstream strs;

我需要做什么?我已经包括以下内容,我肯定是有点过分了.作为第二个问题,似乎很难找到确切需要包含在ostringstream中的内容:

#include <iostream>
#include <fstream>
#include <iosfwd>
#include <ios>
Run Code Online (Sandbox Code Playgroud)

c++ string

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

批量绘制具有不同变换的对象的最佳做法是什么?

我正在构思一个很好的方法,用OpenGL中的单个绘制调用渲染尽可能多的几何脱节,而我反对的墙是最好的方法,当每个部分具有不同的平移和旋转时,您无法在单个对象绘制之间更新模型视图.我在这里和其他地方已经阅读了其他一些问题,似乎人们所指出的方向是多种多样的.列出执行此操作的主要方法并尝试隔离最常见或建议的内容将会很不错.以下是我考虑过的想法:

[编辑:删除提及Instancing,因为它不适用于此处]

  1. 在着色器中创建矩阵变换.在这里,我将发送一个平移向量或旋转角度或四元数作为属性的一部分.它的优点是可以在包括移动设备在内的跨平台工作.但是,为对象中的每个顶点发送完全相同的转换数据作为属性似乎有点浪费.如果没有实例化,我必须在VBO中多次重复这些相同的向量或标量作为交错数组的一部分,对吗?另一个缺点是我依靠着色器来做数学运算; 我不知道这是否明智.

  2. 类似于1),但我不是依靠着色器进行矩阵计算,而是在客户端执行这些操作,但仍然通过最终模型视图矩阵作为VBO中的16个浮点数流发送.但据我所知,没有实例化,我必须为VBO中的每个顶点重复这个相同的流,对吧?只是看起来很浪费.上面2)的权衡是我在每个顶点的VBO中发送更多数据(16个浮点数而不是3个浮点数矢量用于平移,可能是4个浮点数四元数),但要求着色器做更少的工作.

  3. 跳过所有上述限制,而不是为每个对象单独绘制调用.这是我正在阅读的书籍中通常"教授"的内容,这无疑是为了简单起见.

还有其他常用方法吗?

作为一个学术问题,我很好奇上述所有上述内容是否可行且"可接受",或者其中一个显然胜过其他人?如果我是专门使用桌面GL,那么实现这一目标的主要途径是什么?

opengl 3d graphics opengl-es-2.0

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