小编use*_*422的帖子

如何以相同的方式对两个向量进行排序,使用仅使用其中一个向量的条件?

如何以相同的方式对两个向量进行排序,使用仅使用其中一个向量的条件?

例如,假设我有两个相同大小的向量:

vector<MyObject> vectorA;
vector<int> vectorB;
Run Code Online (Sandbox Code Playgroud)

然后我vectorA使用一些比较函数排序.排序重新排序vectorA.如何应用相同的重新排序vectorB


一种选择是创建一个结构:

struct ExampleStruct {
    MyObject mo;
    int i;
};
Run Code Online (Sandbox Code Playgroud)

然后对包含内容vectorA并将其vectorB压缩为单个向量的向量进行排序:

// vectorC[i] is vectorA[i] and vectorB[i] combined
vector<ExampleStruct> vectorC;
Run Code Online (Sandbox Code Playgroud)

这似乎不是一个理想的解决方案.还有其他选择,特别是在C++ 11中吗?

c++ c++11

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

WPF中MVVM的项目结构

在WPF中使用MVVM时,您最终得到的项目结构是什么?

从我现在看到的教程中,他们通常有文件夹:Model,ModelView和View.

在Model中,您可以将Person等类放在捕获数据和逻辑的类中.

在ModelView中,您实例化Model中定义的类.视图包含.xaml文件.

编辑:我编辑我的原始帖子以发送示例项目结构.我有与此有关的问题.我如何组织这些:App.config App.xaml MainWindow.xaml

我应该像现在一样将它们留在外面,还是应该将它们放在某个文件夹中?

在此输入图像描述

c# wpf xaml mvvm

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

使用auto in循环c ++

我收到以下代码的警告签名/未签名不匹配:

auto n = a.size();
for (auto i = 0; i < n; i++) {
}
Run Code Online (Sandbox Code Playgroud)

问题是通过为i它分配0 int而不是size_t.那么更好的是:

size_t n = a.size();
for (size_t i = 0; i < n; i++) {
}
Run Code Online (Sandbox Code Playgroud)

或这个:

auto n = a.size();
for (size_t i = 0; i < n; i++) {
}
Run Code Online (Sandbox Code Playgroud)

或者你有更好的解决方案?我更喜欢第一个,因为它更加一致,它只是使用size_t而不是两个size_t并且auto 用于相同的目的.

c++ loops auto c++11

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

我什么时候应该在WPF中使用依赖属性?

我什么时候应该在WPF中使用依赖属性?

它们是静态的,因此与使用.NET属性相比,我们在内存上节省了很多.在.NET属性上使用依赖项属性的其他好处是:1)不需要检查线程访问2)提示要包含的元素等...

所以我似乎总是应该在我使用WPF的项目中使用依赖属性?

也许对于帮助类的一些微不足道的属性来说,我可以摆脱.NET属性......

c# wpf

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

如何在C++中使用const和const?

我有一个返回const A&的方法.

如果我想使用auto,那么正确的方法是什么.这个可以吗?

const auto &items = someObject.someMethod();
Run Code Online (Sandbox Code Playgroud)

我看到有些人这样做:

auto &items = someObject.someMethod();
Run Code Online (Sandbox Code Playgroud)

我不确定使用哪一个,真的有什么区别......

编辑:

在这种情况下,这两个是等价的吗?

auto items = someObject.someMethod();
auto &items = someObject.someMethod();
Run Code Online (Sandbox Code Playgroud)

c++ c++11

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

如何根据结构中的某些字段在c ++中的结构向量中获取min或max元素?

如何根据结构中的某些字段在c ++中的结构向量中获取min或max元素?

例如:

struct Size {
    int width, height;
};
vector<Size> sizes;
Run Code Online (Sandbox Code Playgroud)

现在我想根据宽度求解并为其创建一个新的向量,然后根据高度进行排序并为其创建一个新的向量.

谢谢

c++ c++11

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

使用布尔值的向量比动态位集慢吗?

使用布尔值的向量比动态位集慢吗?

我刚刚听说过boost的动态bitset,我想知道它值得麻烦.我可以只使用布尔值的向量吗?

c++ vector

15
推荐指数
2
解决办法
9258
查看次数

在for循环中计算向量大小,每次迭代都很昂贵吗?

c ++编译器是否处理像建筑物是矢量的情况:

for (int i = 0; i < buildings.size(); i++) {}
Run Code Online (Sandbox Code Playgroud)

也就是说,它是否注意到是否在循环中修改了建筑物,然后根据每次迭代不评估它?或者也许我应该自己做,不是那么漂亮,但是:

int n = buildings.size();
for (int i = 0; i < n; i++) {}
Run Code Online (Sandbox Code Playgroud)

c++ c++11

15
推荐指数
2
解决办法
2265
查看次数

如何有效地比较矢量与C++?

我需要C++中的微优化建议用于矢量比较函数,它比较两个向量的相等性和元素的顺序无关紧要.

template <class T>
static bool compareVectors(const vector<T> &a, const vector<T> &b)
{
  int n = a.size();
  std::vector<bool> free(n, true);
  for (int i = 0; i < n; i++) {
    bool matchFound = false;
    for (int j = 0; j < n; j++) {
      if (free[j] && a[i] == b[j]) {
        matchFound = true;
        free[j] = false;
        break;
      }
    }
    if (!matchFound) return false;
  }
  return true;
}
Run Code Online (Sandbox Code Playgroud)

这个功能被大量使用,我正在考虑优化它的可能方法.你能给我一些建议吗?顺便说一句,我使用的是C++ 11.

谢谢

c++ c++11

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

这个[Option(...)] C#属性是什么意思?

这个C#属性是什么意思?我主要使用C++,而且我确实知道C#中的属性概念,但不确定这个:它在一个类中.所以基本上我们有一个属性,以及它的属性.

[Option("h", "help", HelpText = "Shows this help message")]
public bool Help { get; set; }
Run Code Online (Sandbox Code Playgroud)

谢谢

c#

9
推荐指数
1
解决办法
2895
查看次数

标签 统计

c++ ×7

c++11 ×6

c# ×3

wpf ×2

auto ×1

loops ×1

mvvm ×1

vector ×1

xaml ×1