小编Bar*_*icz的帖子

在Visual Studio中同时使用垂直和水平分割的最简单方法是什么?

如下面的屏幕截图所示,标有红色箭头:

截图

如果我使用Vertical Tab Split子窗口,我将无法拆分插入另一个选项卡并将其水平拆分.是否有任何插件或设置我可以更改,以便能够将我的代码选项卡放在矩形网格中?

只是为了澄清 - 我不想两次看到相同的文件内容.我希望每个标签显示不同的文件.我找不到引入这种过度简化的原因.

我知道它可以通过打开许多独立窗口来解决,但这对我来说几乎不是一个答案.

以下是Sublime 2中的示例

ide editor visual-studio visual-studio-2012

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

我应该默认使用Haskell模块吗?

标记模块有什么缺点Safe吗?它应该是假定的默认值吗?

haskell ghc

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

boost :: container是否支持C++ 11初始化列表?

在Boost.Container网站上我们可以读到:

Boost.Container在构造或分配容器时不支持初始化程序列表,但它将支持具有初始化列表支持的编译器.(......)

对不起,如果我只是愚蠢,但我真的不知道如何阅读它.这是否意味着它会在不可预测的未来中做到这一点,还是应该立即与合规编译器一起工作?

我已经在GCC 4.7和ICC 13.0上进行了测试,但都没有用,但我相信我可能会错过一些非常重要的东西,比如正确的预处理器定义?

c++ boost initializer-list c++11

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

OpenGL中_REV后缀是什么意思?

阅读glVertexAttribPointer的 OpenGL 参考手册,我发现它接受一个非常奇怪的type值(实际上是其中两个):

另外(...),GL_INT_2_10_10_10_REVGL_UNSIGNED_INT_2_10_10_10_REV被接受glVertexAttribPointer

_REV这里的后缀是什么意思?

opengl

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

为什么Integral约束要求fromIntegral on call?

我刚刚开始在Haskell编程,我正在解决99个Haskell问题,当我差不多完成第10个问题时,我遇到了这个问题:

-- Exercise 9
pack :: Eq a => [a] -> [[a]]
pack [] = []
pack list = let (left,right) = span (== head list) list in
            left : pack right

-- Exercise 10        
encode :: (Eq a, Integral c) => [a] -> [(c, a)]
encode [] = []
encode list = map (\x -> (length x, head x)) (pack list)
-- this doesn't work      ^^^^^^^^
Run Code Online (Sandbox Code Playgroud)

产生的错误告诉我

Could not deduce (c ~ Int)
from the …
Run Code Online (Sandbox Code Playgroud)

haskell ghc

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

如何使用镜头对某些状态下的序列执行只读monadic操作?

我的数据结构看起来或多或少像这样(为了问题的目的简化)

data GameObject = GameObject { _num :: Int }
data Game = Game { _objects :: [GameObject] }
Run Code Online (Sandbox Code Playgroud)

我用它makeLenses来为这两者生成访问器.因此,我能够像这样集体进行操作:

-- loop :: MonadState with Game inside
loop = objects.traversed.num += 1
Run Code Online (Sandbox Code Playgroud)

这很棒.


但是,我找不到相应的方法(打印每一个num):

game <- get
let objects = _objects game
let objectNums = map _num objects
mapM_ print objectNums
Run Code Online (Sandbox Code Playgroud)

我尝试过类似的东西

uses (objects.traversed.num) >>= mapM_ print
Run Code Online (Sandbox Code Playgroud)

但我认为使用traversed某种状态的唯一方法就是使用幺半群,我不想将这些字段组合在一起; 我想对来自我的状态中的某些序列的元素中的每个元素的一部分运行monadic动作.

那么,这可能是使用一些提供的镜头功能,还是我必须自己编写,不知何故?

haskell haskell-lens

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

在openGL中绘制未填充的矩形形状

我想绘制未填充的矩形形状OpenGL,但是当我使用glBegin(GL_QUADS)或者glBegin(GL_POLYGON),结果形状被填充但我想要未填充.我如何绘制未填充的矩形.

void draweRect(void)
{
    glClear(GL_COLOR_BUFFER_BIT);
    glColor3f(0.0,0.0,1.0);
    glLineWidth(30);
    glBegin(GL_POLYGON);
        glVertex2i(50,90);
        glVertex2i(100,90);
        glVertex2i(100,150);
        glVertex2i(50,150);
    glEnd();
    glFlush();   
}
Run Code Online (Sandbox Code Playgroud)

opengl

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

什么是深度不变性?

在阅读Promises/A+规范时,我遇到了术语“深度不变性”。文字说:

\n\n
\n

这里,\xe2\x80\x9cm不能改变\xe2\x80\x9d表示不可变身份(即===),但并不意味着深度不变性。

\n
\n\n

什么是深度不变性?\n有人可以用例子解释一下吗?

\n

javascript immutability promise

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

"表达式必须具有类类型"错误是什么意思?

#include <cstdlib>
using namespace std;

int main()
{
    int arrayTest[512];
    int size = arrayTest.size();
    for(int a = 0;a<size;a++)
    {
         //stuff will go here
    }
}
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么,因为计划是用一些数字填充数组

c++ arrays

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

如何按插入顺序从地图中检索元素?

我有一张地图存储<int, char *>.现在我想按照它们插入的顺序检索元素.std::map返回按键排序的元素.它甚至可能吗?

c++ boost map

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