我正在尝试创建我的第一个Makefile,但是我有一个问题:它重新编译所有内容,即使没有任何改变.我怎么能避免这个?这是Makefile:
all: rmdup lsall lsdir
rmdup: rmdup.c
cc -Wall -o ./bin/rmdup rmdup.c
lsall: lsall.c
cc -Wall -o ./bin/lsall lsall.c
lsdir: lsdir.c
cc -Wall -o ./bin/lsdir lsdir.c
Run Code Online (Sandbox Code Playgroud)
另外,正如您可能已经注意到的那样,编译结果需要位于目录./bin中
还有一个问题:我有什么和这个有什么区别?
all: rmdup lsall lsdir
rmdup.o: rmdup.c
cc -Wall -c -o ./bin/rmdup.o rmdup.c
rmdup: rmdup.o
cc -o ./bin/rmdup ./bin/rmdup.o
lsall.o: lsall.c
cc -Wall -c -o ./bin/lsall.o lsall.c
lsall: lsall.o
cc -o ./bin/lsall ./bin/lsall.o
lsdir.o: lsdir.c
cc -Wall -c -o ./bin/lsdir.o lsdir.c
lsdir: lsdir.o
cc -o ./bin/lsdir ./bin/lsdir.o
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我已经尝试nl2br()
过以及此处评论中列出的所有方法。我遇到的问题是,即使他们确实插入了<br/>
,\n
仍然保留在文本中。
这是我最初的做法:
<?php
$stmt = $db->prepare(...)
$stmt->execute();
while ($row = $stmt->fetch()) {
$tldr_clean = nl2br($row['tldr']);
$body_clean = nl2br($row['body']);
?>
<section>
<h2 class="tldr"><?= $tldr_clean ?> <?= $row['score']?>/10</h2>
<p class="body"><?= $body_clean ?></p>
<p class="reviewer">Written by <?= $row['name'] ?></p>
</section>
<?php
} ?>
Run Code Online (Sandbox Code Playgroud)
假设$row['body']
是"Hello\nGoodbye"
,html中的输出是:
Hello\n
Goodbye
Run Code Online (Sandbox Code Playgroud)
我已经尝试将该方法nl2br()
直接与存储在数据库中的字符串一起使用,并且它工作正常。所以我猜问题在于用变量调用方法?我该如何解决?
编辑:
字符串在 SQLite 表中存储为 NVARCHAR2。
存储在数据库中的字符串:
"Fusce vitae purus tristique, efficitur dolor et, tristique ante. Aliquam sapien nisl, sagittis id …
我有一个名为 GameLoop 的 Activity(扩展 Activity 的类)。但我没有使用 xml 文件进行布局,而是使用一个类,因为我希望能够绘制到画布上。(我在一些教程上看到这是你应该做的)
布局类称为 GameLoopLayout。
我在布局类中运行了一个游戏循环,我可以将位图渲染到屏幕上并控制 FPS,一切都很好。但现在我想向其添加一个按钮,但由于我没有使用 xml 布局文件,所以我不知道该怎么做。有人可以帮我吗?
我在自动柜员机上做什么:
游戏循环布局:
Button button;
Canvas canvas;
SurfaceHolder surfaceHolder;
public GameLoopActivityLayout(Context context) {
//all necessary initializations here...
button = new Button(context);
button.setEnabled(true);
button.setLeft(10);
button.setTop(20);
}
//render function called during game loop
private void render() {
if (!surfaceHolder.getSurface().isValid())
return;
canvas = surfaceHolder.lockCanvas();
//draw all game objects to canvas...
button.draw(canvas);
surfaceHolder.unlockCanvasAndPost(canvas);
}
Run Code Online (Sandbox Code Playgroud) 我有一个MyClass
具有const属性的抽象类my_attr
。每个子类都应通过覆盖纯虚方法来初始化它们认为合适的属性init_my_attr
。
问题在于这会导致分段错误。
// MyClass.h
class MyClass : public MyParentClass
{
public:
MyClass(...);
protected:
virtual vector<int> init_my_attr() const = 0;
private:
const vector<int> my_attr;
}
// MyClass.cpp
MyClass::MyClass(...) : MyParentClass(...), my_attr(this->init_my_attr())
{
}
Run Code Online (Sandbox Code Playgroud)
上面的代码有什么问题?