小编Syn*_*ose的帖子

CakeKE_BUILD_TYPE未在CMakeLists.txt中使用

我在将我的默认构建配置设置为Release时遇到问题,在我的CMakeLists.txt文件中,我在文件顶部设置了CMAKE_BUILD_TYPE

#enable Release ALWAYS, configure vars
set(CMAKE_BUILD_TYPE Release)
set(EXECUTABLE_NAME "ParticleSimulator")
set(VERSION_MAJOR 0)
set(VERSION_MINOR 2)
Run Code Online (Sandbox Code Playgroud)

但是在构建我的项目并打开解决方案时,我总是会看到调试模式,这与我在CMakeLists文件中指定的相反.我究竟做错了什么?我在那里看了一些其他的问题,但没有看到任何特定于这个问题的东西.

CMakeLists.txt的要点

build cmake build-system

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

如何使用自定义步骤迭代范围?

如何使用1以外的步骤迭代Rust中的范围?我来自C++背景,所以我想做点什么

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

在Rust中我需要使用该range函数,并且似乎没有第三个参数可用于自定义步骤.我怎么能做到这一点?

rust

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

有些和无,它们是什么?

在编写一些试图习惯Rust的小型初级练习时,我遇到了一些我不懂的输出Vec::get.这是代码:

fn main() {
    let command = [('G', 'H'), ('H', '5')];

    for i in 0..3 {
        print!(" {} ", i);
        println!("{:?}", command.get(i));
    }
}
Run Code Online (Sandbox Code Playgroud)

输出是

0 Some(('G', 'H'))
1 Some(('H', '5'))
2 None
Run Code Online (Sandbox Code Playgroud)

我在Haskell涉足面前,我的意思是看了教程网站10分钟,跑回C++,但我记得读的东西SomeNoneHaskell的.我很惊讶在Rust看到这个.有人可以解释为什么.get()返回SomeNone

rust

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

*ng对于ng-template输出没有Angular2

不知道为什么我的*ngFor循环没有打印出来.我在html文件中有以下代码:

<table class="table table-hover">
    <thead>
        <tr>
            <th>Name</th>
            <th>Email</th>
            <th>Company</th>
            <th>Status</th>
        </tr>
    </thead>
    <tbody>
        <!-- NGFOR ATTEMPTED HERE -- no content printed -->
        <ng-template *ngFor="let xb of tempData">
            <tr data-toggle="collapse" data-target="#demo1" class="accordion-toggle">
                <td>{{ xb.name }}</td>
                <td>{{ xb.email }}</td>
                <td>{{ xb.company }}</td>
                <td>{{ xb.status }}</td>
            </tr>
            <!-- other content -->
        </ng-template>
    </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

然后,在我的简单组件中,我有以下内容:

import { Component }        from '@angular/core';

@Component({
    selector: 'my-profile-exhibitors',
    templateUrl: './profile-exhibitors.component.html',
    styleUrls: ['./profile-exhibitors.component.scss']
})
export class ProfileExhibitorsComponent {
    public tempData: any = [
        {
            'name': 'name1',
            'email': 'email1@gmail', …
Run Code Online (Sandbox Code Playgroud)

angular

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

为什么我会使用不同的功能?

通过Rust书阅读,我遇到了一个有趣的话题 - 不同的功能:

Rust有一些特殊的'分叉函数'语法,这些函数不返回:

fn diverges() -> ! {
    panic!("This function never returns!");
}
Run Code Online (Sandbox Code Playgroud)

发散功能可以用作任何类型:

let x: i32 = diverges();
let x: String = diverges();
Run Code Online (Sandbox Code Playgroud)

发散功能的用例是什么?这本书说的

panic!()导致当前执行的线程与给定的消息一起崩溃.因为此函数会导致崩溃,所以它永远不会返回,因此它具有类型!

这是有道理的,但我不能想到一个不同的功能将在哪里使用,它似乎非常本地化panic!.我知道必须有一些有用的场景,为什么他们引入了不同的功能.在Rust哪里可能会看到不同的功能?

rust

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

是否可以在Rust for循环中声明变量的类型?

C++示例:

for (long i = 0; i < 101; i++) {
    //...
}
Run Code Online (Sandbox Code Playgroud)

在Rust中我尝试过:

for i: i64 in 1..100 {
    // ...
}
Run Code Online (Sandbox Code Playgroud)

我可以很容易地let i: i64 =在for循环之前声明一个var,但我宁愿学习正确的方法来做到这一点,但这导致了

error: expected one of `@` or `in`, found `:`
 --> src/main.rs:2:10
  |
2 |     for i: i64 in 1..100 {
  |          ^ expected one of `@` or `in` here
Run Code Online (Sandbox Code Playgroud)

rust

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

void main的起源是什么?

我经常看到void main()论坛周围的臭名昭着,几乎立即发出评论,告诉用户永远不要使用void main()(我完全同意).但它的起源在void main()哪里?

为什么我仍然看到较新的人养成了main在正确的方式返回时没有任何回报的坏习惯int.我理解为什么这个方法是错误的,正如这个问题和众多其他人所解释的那样,但我不知道这种宣告方法main是如何产生的,甚至不是为什么它仍然教给一些学生.

c++

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

在过滤之前将函数应用于列

我在我的数据库中有一个列coordinates,现在坐标列包含有关对象在我的图形中占用的时间范围的信息.我想允许用户按日期过滤,但问题是我使用函数来正常确定日期.采取:

# query_result is the result of some filter operation
for obj in query_result:
    time_range, altitude_range = get_shape_range(obj.coordinates)
    # time range for example would be "2006-06-01 07:56:17 - ..."
Run Code Online (Sandbox Code Playgroud)

现在,如果我想按日期过滤,我希望是like:

query_result = query_result.filter(
    DatabaseShape.coordinates.like('%%%s%%' % date))
Run Code Online (Sandbox Code Playgroud)

但问题是,申请我首先需要get_shape_rangecoordinates以接收一个字符串.有没有办法......我猜一个transform_filter操作?这样在like发生之前,我将一些函数应用于坐标?在这种情况下,我需要编写一个get_time_range只返回时间的函数,但问题仍然是一样的.


编辑:这是我的数据库类

class DatabasePolygon(dbBase):
    __tablename__ = 'objects'

    id = Column(Integer, primary_key=True)  # primary key
    tag = Column(String)  # shape tag
    color = Column(String)  # color of polygon
    time_ = Column(String)  # time …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy python-2.7

17
推荐指数
1
解决办法
836
查看次数

Rust的数字根与std :: num :: sqrt

我对来自c ++的生锈很新,所以我真的不明白真正的用法use std::num;.我有一个非常简单的程序,在这个程序中我想取一个数字的平方根.

我在这里查看了文档,并sqrt在顶部写了一个我认为可以允许的内容std::num::sqrt.这不起作用,所以我需要做什么才能实际使用use?我知道这是一个可怕的简单问题; 但我似乎无法弄清楚这一点.

let upperLimit: i64 = sqrt(num as f64) + 1; //doesnt work
Run Code Online (Sandbox Code Playgroud)

rust

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

无法理解列表理解

我刚开始学习haskell(字面意思,今晚!)而且我在理解列表推导的逻辑方面有点麻烦,更具体地说是<-运算符.了解一些Haskell的一个小例子查找长度小于10的所有元组:

ghci> let triangles = [ (a,b,c) | c <- [1..10], b <- [1..10], a <- [1..10] ]
Run Code Online (Sandbox Code Playgroud)

我最初的理解是这些都会一起增加,但在看到输出后我真的不理解这些列表的递增方法.另一个似乎让我得到的例子是:

ghci> let rightTriangles = [ (a,b,c) | c <- [1..10], b <- [1..c], a <- [1..b], a^2 + b^2 == c^2]
Run Code Online (Sandbox Code Playgroud)

我真的很感激对这些的一点解释,感谢你对我缺乏haskell情报的耐心.

haskell list-comprehension pythagorean

12
推荐指数
1
解决办法
374
查看次数