小编use*_*301的帖子

如何在Eclipse Juno/Kepler/Luna CDT中启用C++ 11?

编辑:事实证明这并非特定于Eclipse Kepler.我不得不对Eclipse Juno使用相同的过程.问题是,其他帖子似乎缺少回答同一问题的步骤.

我正在使用Eclipse Kepler for C++,我正在尝试使用C++ 11并获得错误.当我编译时,我得到了错误

错误:C++ 98模式下不允许使用基于范围的for循环

我按照帖子的说明进行了操作

Eclipse CDT C++ 11/C++ 0x支持

并且为Eclipse Juno提供的解决方案无效.

不同的评论表明重启日食,清洁和重建.这并没有什么不同.

eclipse eclipse-cdt eclipse-juno eclipse-kepler eclipse-luna

85
推荐指数
4
解决办法
9万
查看次数

SQL Server 2008:TOP 10并且完全不同

正如标题所说,我正在使用SQL Server 2008.如果这个问题非常基础,请道歉.我只用了几天SQL.现在我有以下查询:

SELECT TOP 10 p.id, pl.nm, pl.val, pl.txt_val

from dm.labs pl
join mas_data.patients p    
  on pl.id = p.id
  where pl.nm like '%LDL%'
  and val is not null
Run Code Online (Sandbox Code Playgroud)

我想要做的是使用select顶部n和id列中的不同值.搜索一些论坛说要使用

SELECT DISTINCT TOP 10 ...
Run Code Online (Sandbox Code Playgroud)

但当我用第一行替换

SELECT DISTINCT TOP 10 p.id, pl.nm, pl.val, pl.txt_val
Run Code Online (Sandbox Code Playgroud)

我得到的结果与没有单词distinct的结果相同.我应该怎么做才能过滤掉重复的id条目?

谢谢.

sql sql-server sql-server-2008

50
推荐指数
4
解决办法
16万
查看次数

Matlab - 加速嵌套For循环

一个简单的问题,但我对MATLAB并不是那么好.我有矢量x,(nx 1)y,(mx 1)和w = [x;y].我想将M(n + mx 1)定义为M(i)= x的元素数小于或等于w(i)(w被排序).这只是没有削减它:

N = n + m;
M = zeros(N,1);
for i = 1:N
  for j = 1:n
    if x(j) <= w(i)
      M(i) = M(i) + 1;
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

这不是一种特别聪明的方法,我的一些数据向量m和n大约是100000.

谢谢!

matlab

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

C++:获取使用ofstream时打印的字符数

C fprintf()函数返回打印的字符数.在写入文件时,C++中是否有类似的功能ofstream?我感兴趣的是一个与C++ 03兼容的解决方案.

例如:

ofstream file("outputFile");
file << "hello";

// Here would I like to know that five characters were printed.

file << " world";

// Here I would like to know that six characters were printed.
Run Code Online (Sandbox Code Playgroud)

c++ io c++03

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

C:随机数生成 - 什么(如果有的话)是错的

对于C中的简单模拟,我需要生成指数随机变量.我记得在某个地方读过(但我现在找不到,我不记得为什么)使用rand()函数在固定范围内生成随机整数会产生非均匀分布的整数.因此,我想知道这段代码是否有类似的问题:

//generate u ~ U[0,1]
u = (   (double)rand() / ((double)(RAND_MAX));
//inverse of exponential CDF to get exponential random variable
expon = -log(1-u) * mean;
Run Code Online (Sandbox Code Playgroud)

谢谢!

c random

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

Sphinx文档系统 - 使用rst_prolog进行多次替换

如何在Sphinx中定义多个全局替换?

在这个问题中看到如何使用conf.py中的rst_prolog创建全局替换.例如,

rst_prolog = '.. |my_conf_val| replace:: 42'
Run Code Online (Sandbox Code Playgroud)

我能找到的所有这些例子只能在rst_prolog中定义一个替换,但我想做多个.我试过这个:

rst_prolog = """.. |sub1| replace:: mine1\
         .. |sub2| replace:: mine2"""
Run Code Online (Sandbox Code Playgroud)

当我把| sub1 | 到第一个文件中的文本,| sub1 | 是(毫不奇怪)替换为:

mine1 .. |sub2| replace:: mine2
Run Code Online (Sandbox Code Playgroud)

这里的语法是什么?

python python-sphinx

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

Pinvoke - 来自 C++ 的回调,函数之间传递的数组具有意外大小

编辑:我已经根据@Hans Passant 的评论和@David Heffernan 的回答中的建议更新了代码。

这个论点c不再为空,但两者xc仍然有一个长度,当它们被传递回CallbackFunction

我正在尝试编写将函数指针(使用委托)传递给调用函数指针的 C++ 函数的 C# 代码。

代码如下。

我遇到的问题是,当 C++ 函数f调用时fnPtr(x,c),在 C# 函数中CallbackFunctionx有一个元素(正确值为 1.0),并且c为空。我不知道问题是什么。

我无法更改 MyCallback 的签名。

C#代码:

using System.Runtime.InteropServices;

namespace PInvokeTest
{
    class Program
    {
        [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
        private delegate double MyCallback(
            [In] double[] x,
            [Out] double[] c);

        private static double CallbackFunction(
            [In] double[] x,
            [Out] double[] c)
        {
            c[0] = x[0] + x[1] + x[2];
            c[1] = x[0] …
Run Code Online (Sandbox Code Playgroud)

c# pinvoke marshalling

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

命令在命令行中有效,但在bash脚本中没有给出“没有这样的文件或目录”

就像标签说的那样,这是在Cygwin中。

我有一个可以从Cygwin控制台运行的命令行程序:

./optAlg.exe data/5Node/1.dat 500 2>&1 > output/1.out
Run Code Online (Sandbox Code Playgroud)

我编写了以下bash脚本以使其循环

#!/bin/bash

for inputFile in data/5Node/*.dat
do
  outputFile=${inputFile##*/} #strip output name from input name
  outputFile=${outputFile%.*} #strip output name input file
  outputFile+=".out"
  "./optAlg.exe $inputFile 500 2>&1 > output/$outputFile"
done
Run Code Online (Sandbox Code Playgroud)

当我运行bash脚本时,对于for循环的每次迭代,我都会得到“没有这样的文件或目录”,例如,

./batchOpt.sh: line 8: ./optAlg.exe data/5Node/1.dat 500 2>&1 > output/1.out: No such file or directory
Run Code Online (Sandbox Code Playgroud)

这里发生了什么事?我不确定自己在做什么错。

bash cygwin

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

Windows批处理 - 将程序输出重定向到for循环中的文件

我正在使用Windows 7.

我有一个程序叫做optAlg.exe我在批处理脚本的for循环中调用,我想将输出重定向optAlg.exe%outputFile%.当我在批处理脚本中运行以下循环时,输出将optAlg.exe写入控制台.

for %%i in (data/5Node/*.dat) do @(
  set inputFile=%%i
  set outputFile="%inputFile%.out"
  optAlg %inputFile% 500 ^> %outputFile%
)
Run Code Online (Sandbox Code Playgroud)

如何将其输出到文件而不是控制台?

编辑:我正在尝试做的事情就是打电话

optAlg 1.dat 500 > 1.dat.out
optAlg 2.dat 500 > 2.dat.out
...
optAlg n.dat 500 > n.dat.out
Run Code Online (Sandbox Code Playgroud)

.dat我所拥有的文件是1.dat通过命名的n.dat

batch-file

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

SQL Server 2008:计算多个日期范围中的键数

再次SQL Server 2008.我为每个id 都有一个主键pt_id和一个datetime列order_dts.我想计算1996 - 2008年每年的钥匙数量,并返回8个结果 - 每年计算一次.一年

SELECT COUNT pm.pt_id AS '1996'
FROM dm.medications pm
WHERE (pm.order_dts BETWEEN '1/1/1996' and '12/31/1996')
Run Code Online (Sandbox Code Playgroud)

有效,但我怎么能这么多年,而不必像八个不同的查询做一些荒谬的事情?

谢谢!

sql sql-server sql-server-2008

0
推荐指数
1
解决办法
563
查看次数