小编Wil*_*3uk的帖子

C明显比C++快

据我所知,所有脚本语言和核心科学程序通常都是用C语言编写的; 这使得实现变得凌乱,但却直截了当.

我理解这些人希望最大限度地提高他们的表现,但是使用C字符串和C结构来使用C++类之间存在真正的区别; C++似乎以相同的方式工作,除了虚函数之外,它只存储一个类函数,并且该类的每个实例都调用一个函数.

是什么让C更快,并且在像python或sqlite这样的项目中它必须是最快的显着差异?

c c++ performance

69
推荐指数
4
解决办法
6万
查看次数

Node.js - Redis教程

你如何使用node.js redis库,redis的核心概念是什么?所有redis函数都做了什么,例如hset,hget等?我能举个例子吗?

javascript redis node.js

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

如何导入非node.js文件?

如何加载不符合node.js格式的外部js文件.我正在尝试导入json序列化库.我怎样才能做到这一点?

javascript node.js

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

Qt替代?

我最近发现Qt的未来已经变得不确定,因为诺基亚,它的现任所有者,已宣布他们正式对桌面Qt没有兴趣.

我知道Qt可以通过几个不同的事件生存,但是我担心在OS支持方面学习一个垂死的框架,所以我想学习另一个像Qt一样的跨平台应用程序框架.

它需要是跨平台的,并且包含许多类,如用于开发的Qt以及可靠的GUI库.我希望它非常稳定,并得到操作系统和IDE的良好支持

WxWidgets已经在win32上对它进行了太多的自我设计并且非常不直观,并且窗口布局非常不稳定

Gtkmm模型很像包装器,就像Gtk一样,它的文档是一些不存在的.它也有很少的应用程序类,所以我不得不四处寻找其他跨平台库.它的信号槽实现与Qt的易用性和简单性无法匹配,Qt的线程支持令人惊叹.

我唯一担心的是,如果没有公司或大型社区接受Qt,它将慢慢失去对Windows,新Linux内核,Xorg版本,mac更新的兼容性......我不愿意看到这种情况发生,因为Qt是一个了不起的框架

c++ user-interface qt

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

Android C++ NDK

我正在尝试为android ndk编译以下内容

#include <jni.h>
#include <string.h>

extern "C" {
    JNIEXPORT jstring JNICALL Java_com_knucklegames_helloCpp_testFunction(JNIEnv * env, jobject obj);
};

JNIEXPORT jstring JNICALL Java_com_knucklegames_helloCpp_testFunction(JNIEnv *env, jobject obj) {
 return env->NewStringUTF(env, "Hello from native code!");
}
Run Code Online (Sandbox Code Playgroud)

但它给出了以下错误

Compile++ thumb: helloCpp <= /cygdrive/c/workspace/helloCpp/jni/main.cpp
/cygdrive/c/workspace/helloCpp/jni/main.cpp: In function '_jstring* Java_com_knucklegames_hello
Cpp_testFunction(JNIEnv*, _jobject*)':
/cygdrive/c/workspace/helloCpp/jni/main.cpp:10: error: no matching function for call to '_JNIEn
v::NewStringUTF(JNIEnv*&, const char [24])'
/cygdrive/d/android/android-ndk-r4b/build/platforms/android-8/arch-arm/usr/include/jni.h:839: note: candidates
 are: _jstring* _JNIEnv::NewStringUTF(const char*)
make: *** [/cygdrive/c/workspace/helloCpp/obj/local/armeabi/objs/helloCpp/main.o] Error 1
Run Code Online (Sandbox Code Playgroud)

c++ android android-ndk

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

在make上添加路径

在我的makefile中,我有一个对象变量.我需要在每个.o文件前加上obj /.我该怎么做?

CC=g++
CFLAGS=-C -Wall
LDFLAGS=-lsqlite3 -lpthread -ldl
SOURCES=main.cpp Database.cpp actionInit.cpp TileSet.cpp Player.cpp
OBJECTS=$(SOURCES:.cpp=.o)

EXECUTABLE=mahjong-counter

all: bin $(OBJECTS) $(EXECUTABLE)

bin:
    mkdir -p bin

%.o: %.cpp
    $(CC) $(LDFLAGS) $< -c -o $@

$(EXECUTABLE): $(OBJECTS)
    $(CC) $(LDFLAGS) $(OBJECTS) -o $(EXECUTABLE)

clean:
    rm $(OBJECTS)
Run Code Online (Sandbox Code Playgroud)

makefile g++

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

C++ 向量的最佳 C 实现是什么?

我一直在考虑使用 C 而不是 C++,因为我发现它更干净,而且我发现它主要缺少的是像数组这样的向量。

最好的实现是什么?

我希望能够调用诸如 vector_create、vector_at、vector_add 等之类的东西。

c arrays vector

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

Nodejs需要具有初始化程序的类

例如,我有以下课程

var Person = function(name)
{
  this.sayHi = function()
  {
    return "Hello, " + name + "!";
  }
}

exports.Person = Person;
Run Code Online (Sandbox Code Playgroud)

在nodejs我尝试过

var Person = require('modulename').Person('Will');
Run Code Online (Sandbox Code Playgroud)

但这只是给了身份不明.如何在nodejs中需要一个带初始值设定项的类?

javascript class node.js

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

我如何调用dataChanged

以下是我添加的行类.它是由代码而不是表调用的,我希望它在添加新行时正确调用dataChanged,虽然这不起作用,但表没有做任何事情.我究竟做错了什么?

void MyModel::add(const Person& p)
{
    people.push_back(p);

    QModelIndex top = createIndex(people.count() - 1, 0, 0);
    QModelIndex bottom = createIndex(people.count() - 1, 3, 0);

    emit dataChanged(top, bottom); // emit layoutChanged() if headers changed
}
Run Code Online (Sandbox Code Playgroud)

c++ qt4 qtableview qabstracttablemodel

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

是否有基于文本的进度条实现?

我正在尝试创建一个基于终端的备份程序,我正在寻找一些创建基于文本的进度条的C++代码.我知道你可以用\ b自己实现它但我想我会看看是否已经有任何精心构建的实现.我最喜欢的基于文本的进度条的实现是pacman在arch linux上的进度条.

我的项目是用C++(Qt4)创建的.

c++ terminal text-based

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