小编Mat*_*ock的帖子

Common Lisp中的整数除法?

当我这样做时(/ 7 2),我该怎么办才能得到结果3呢?如果我这样做(/ 7 2.0),我得到了3.5,这是预期的.

lisp clisp casting

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

如何在Common Lisp中可移植地解析命令行参数和标志?

我想在Common Lisp中获取并解析命令行参数,以便例如myscript -a 1 -b 2允许我获取值,并且myscript -xyz也可以工作.我怎样才能移植(编译器之间)?

common-lisp command-line-arguments

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

如何在不创建类实例的情况下使用成员函数,使用std :: function?

我正在寻找一种在不创建类实例的情况下调用成员函数的方法,我不是指静态函数.

情况如下:

//Texture.cpp
#include "Window.hpp"//Window included
void Texture::Init(const char* path, const Window&)
{
  loadTexture(path, Window.getRenderer();
}

void Texture::loadTexture(const char* path, SDL_Renderer* renderer)
{
  //code...
}
Run Code Online (Sandbox Code Playgroud)

Window有一个成员函数SDL_Renderer*getRenderer().但是,我不能在这种情况下使用它,因为没有创建Window的实例.

我遇到了这个问题,如果我必须自己找到一个方法,我会做同样的事情:创建静态函数.但是,这看起来像是为我解决了一个问题.使用std :: function和std :: bind的答案看起来不错,但我无法弄清楚如何使用它.有人可以帮帮我吗?

我有:

  • 函数loadTexture,将const char*和SDL_Renderer*作为参数,并返回void
  • 函数Init,将const char*和const Window&作为参数,并返回void
  • class Window,它具有函数getRenderer,不带参数并返回SDL_Renderer*

请问有人帮我解释一下,所以下次遇到这个问题时我可以自己做同样的事吗?

提前致谢.

c++ class function c++11

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

C++中void和非void函数的区别

我有一个简单的问题

假设我在C++中有两个函数:

void DoSomething();
Run Code Online (Sandbox Code Playgroud)

bool DoSomething();
Run Code Online (Sandbox Code Playgroud)

这两个功能之间的内存或速度有什么不同吗?

第二个问题,与第一个问题有关:我认为存在速度差异,因为布尔必须返回一些价值.但我根本不必使用返回值.那么,将DoSomething()声明为bool对我有好处,以防万一我决定将来还给某些东西?

c++ memory function

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

添加字符到Python unicode strip?

我想从strip中删除尾随空格和其他一些字符.这里是示例输入/输出(显式标记的制表符和换行符):

Input:
"\t [[  dwarf ]]]   \n"

Output:
"dwarf"
Run Code Online (Sandbox Code Playgroud)

现在我理论上可以像这样解决我的问题,:

x = x.strip().strip("[]").strip().strip("[]")
Run Code Online (Sandbox Code Playgroud)

这应该耗尽我的数据库中可能发生的每种组合; 但是,如果我们有更多级别的括号和空格,我仍然需要更改代码.我可以通过循环来解决这个问题,但它会同样丑陋和低效.有没有更好的方法,或者告诉strip不要使用整个字符串,而是使用我提供的字符?

python regex unicode text

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

如何准备学习Lisp离线

明天我将去意大利旅行.我只会让我的笔记本电脑运行basicOS 32位.我很可能没有互联网连接.我决定,我想在那里度过我的空闲时间来学习Lisp.我安装了emacs,sbcl和slime,但我不太确定sbcl是如何工作的,而且我担心如果我要做一些更复杂的事情,我会需要网友的帮助,我不会在那里.我还发现并下载了2本免费的lisp书籍 - Common Lisp - 一种交互式方法Common Lisp - 一种温和的符号计算简介.我希望这些就足够了.

我有C++编程背景,但使用C++对我来说看起来更简单 - 我们有标准来定义编译器应该有什么,我们有很少使用的编译器(G ++,clang,MSVC++),而且因为我知道如何编译,所以对我来说不难.此外,对于初学者,有IDE可以为您编译代码.Lisp,afaik,没有明确的标准.另外,我不知道,所以我真的不知道如何编译它的代码.

问题是:我应该安装什么才能让它在那里运行?我应该采取什么材料才能实现自给自足?如果你能给我一些关于如何编译我的第一个代码的教程的链接,我会很高兴 - 我想在去之前测试它(简单的"你好,世界"就足够了).

lisp linux offline common-lisp

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