小编Min*_*wth的帖子

如何检查向量中是否包含值?C++

我有一个向量,我试图执行包含函数.我收到某种铸造错误,我无法拼凑出一个解决方案.我也想知道我在做什么是检查向量是否包含值的适当方法.

这是代码:

#include "stdafx.h"
#include <vector>

static void someFunc(double** Y, int length);
static bool contains(double value, std::vector<double> vec);

int main()
{
    double doubleArray[] = { 1, 2, 3, 4, 5 };
    double *pDoubleArray = doubleArray;
    int size = sizeof doubleArray / sizeof doubleArray[0];

    someFunc(&pDoubleArray, size);

    return 0;
}
static void someFunc(double** Y, int length)
{   
    std::vector<double> vec();

    for(int i = 0; i < 10; i++)
    {
        //error: 'contains' : cannot convert parameter 2 from 'std::vector<_Ty> (__cdecl *)(void)' to 'std::vector<_Ty>'
        if(contains(*(Y[i]), …
Run Code Online (Sandbox Code Playgroud)

c++ casting vector most-vexing-parse

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

OpenGL 2.1中的顶点缓冲区对象

(我指定了2.1,因为我的笔记本电脑不会超过那个版本.我可能已经完成了这个,因为3.x和on引入着色器是强制性的?).

感谢维基百科:http://en.wikipedia.org/wiki/Vertex_Buffer_Object我开始意识到使用VBO是多么简单(我仍然对IBO没有积极的看法?).到目前为止我所理解的是使用它们的主要原因是由于数据现在存储在视频存储器中而获得的性能提升.

我想知道的是我应该如何在实际环境中使用它们.例如,我所看到的所有内容都是设置一个顶点缓冲区对象并绘制一个三角形或一个立方体等.如果我想绘制2个或更多,该怎么办?我是否为要绘制的每个实体设置了一个新的VBO?或者我是否神奇地附加到我早期设置的静态VBO?

c opengl vbo

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

Visual C++无人管理和管理

在C++中创建.NET对象的实例与托管和非托管之间有什么区别.也就是说,这些声明之间的区别是什么:

StreamWriter ^stream = gcnew StreamWriter(fileName);
Run Code Online (Sandbox Code Playgroud)

StreamWriter *stream = new StreamWriter(fileName);
Run Code Online (Sandbox Code Playgroud)

我的假设是,如果我使用gcnew,为StreamWriter分配的内存将由垃圾收集器管理.或者,如果我使用指针(*)和new关键字,我将不得不调用delete来释放内存.

我真正的问题是:垃圾收集器是否会管理在.NET对象内部分配的内存?例如,如果.NET对象实例化另一个对象,并且它超出范围 - 即使我使用指针(*)和new关键字而不是gcnew和handle(^),垃圾收集器是否会管理该内存.

pointers memory-management c++-cli visual-c++

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

WinForms属性网格不允许我更改结构值

不太清楚为什么会发生这种情况,但我希望能够修改XNA颜色值:

private Color _color = Color.White;

[System.ComponentModel.Category("VisibleInEditor")]
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public Color Color
{
    get { return _color; }
    set { _color = value; }
}
Run Code Online (Sandbox Code Playgroud)

我认为使用ExpandableObjectConverter属性可以解决问题,但它还没有这样做.

编辑:我能够将以下工作代码拼凑在一起:

public class ColorTypeConverter : ExpandableObjectConverter
{
    public override bool CanConvertTo(ITypeDescriptorContext context, System.Type destinationType)
    {
        return destinationType == typeof(Color);
    }

    public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, System.Type destinationType)
    {
        if (destinationType == typeof(string) && value is Color)
        {
            Color color = (Color)value;
            return string.Format("{0}, {1}, {2}, {3}", color.R, color.G, color.B, color.A);
        } …
Run Code Online (Sandbox Code Playgroud)

.net c# propertygrid xna

6
推荐指数
1
解决办法
1185
查看次数

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

如何使类反序列化为不同的名称

例如:

<apple />
Run Code Online (Sandbox Code Playgroud)

将序列化为一个名为"苹果"的类.但是,如果我想将该类称为"Dragon",它将不会序列化(这是有道理的).我想知道如何标记"龙",这样当XmlSerializer看到它时,它知道"龙"是一样的

.net c# xml xmlserializer

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

在clojure中fn和defn有什么区别?

以下是在Clojure中编写函数的两种方法:

(defn foo [a b] (+ a b))
(fn foo [a b] (+ a b))
Run Code Online (Sandbox Code Playgroud)

我可以这样称呼它们:

在'defn'的情况下

(foo 1 2)
Run Code Online (Sandbox Code Playgroud)

在'fn'的情况下

((fn foo [a b] (+ a b)) 1 2)
Run Code Online (Sandbox Code Playgroud)

'fn'似乎没有将其可选名称插入当前范围,其中'defn'似乎就是这样做的.有两种创建函数的方法还有其他差异或原因吗?有没有理由我们不像这样使用'fn':

(fn foo [a b] (+ a b))
(foo 1 2)
Run Code Online (Sandbox Code Playgroud)

clojure

6
推荐指数
1
解决办法
1435
查看次数

如何使用BinaryWriter编写列表?

我想使用通用的WriteList(List值)函数来使用BinaryWriter编写List.这是我正在使用的代码:

public void WriteList<T>(List<T> value)
{
    for (int i = 0; i < value.Count; i++)
    {
        _writer.Write(value[i]);
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到的错误是:

 Error  1   The best overloaded method match for 'System.IO.BinaryWriter.Write(bool)' has some invalid arguments    
Error   2   Argument 1: cannot convert from 'T' to 'bool'   
Run Code Online (Sandbox Code Playgroud)

BinaryFormatter绝对不是一个选择.

c# binarywriter

5
推荐指数
2
解决办法
5671
查看次数

未解决的窗户外部

我正在使用Visual Studio x64 Win64命令提示符(2010)来编译我的代码.我收到一些错误,我通常会知道如何在Visual Studio中修复,但不是只使用命令行.

输出:

Microsoft (R) C/C++ Optimizing Compiler Version 16.00.40219.01 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

main.cpp
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:main.exe
main.obj
main.obj : error LNK2019: unresolved external symbol __imp_DispatchMessageA referenced in function WinMain
main.obj : error LNK2019: unresolved external symbol __imp_TranslateMessage referenced in function WinMain
main.obj : error LNK2019: unresolved external symbol __imp_PeekMessageA referenced in function WinMain
main.obj : error LNK2019: unresolved external …
Run Code Online (Sandbox Code Playgroud)

c++ unresolved-external

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

如何将非命名空间类型导入IronPython?

我有一个C#.NET类,它存在于需要在IronPython中访问的命名空间之外.通常我会这样做:

import SomeNamespace
from SomeNamespace import *
Run Code Online (Sandbox Code Playgroud)

但是,我没有命名空间.

.net c# python ironpython namespaces

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