小编G-7*_*-71的帖子

如何在Vertical BoxSizer中设置差距?

如何设置Vertical BoxSizer的差距?Vertival BoxSizer中的相似或替代方法SetVGap(在GridSizer中设置sizer中单元格之间的垂直间隙(以像素为单位))是什么?

python user-interface wxwidgets wxpython

6
推荐指数
3
解决办法
8896
查看次数

在c ++类型的构造函数中强制转换

我有以下c ++代码:

#include <iostream>
#include <string>

    int main( int argc, char* argv[] )
    {
        const std::string s1 = "ddd";
        std::string s2( std::string( s1 ) );
        std::cout << s2 << std::endl;
    }
Run Code Online (Sandbox Code Playgroud)

结果是:1为什么?当我使用-Wall标志时,编译器写警告:'std :: string s2(std :: string)'的地址总是计算为'true'

但是这段代码:

#include <iostream>
#include <string>

int main( int argc, char* argv[] )
{
    const std::string s1 = "ddd";
    std::string s2( ( std::string )( s1 ) );
    std::cout << s2 << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

结果:ddd

这是正常的结果

c++

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

编译共享库,也从中调用函数

我有一个f2.cpp文件

// f2.cpp
#include <iostream>

void f2()
{
    std::cout << "It's a call of f2 function" << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

我将cygwin与crosstool编译器gcc一起使用。

g++ -fPIC -c f2.cpp
g++ -shared -o libf2.so f2.o
Run Code Online (Sandbox Code Playgroud)

我有一个libf2.so文件。现在我想在f1库(也是共享对象)libf1.so中调用f2函数。

这是一个f1.cpp,我想乘f1.so

// f1.cpp
#include <iostream>
void f1()
{
    std::cout << "f1 function is calling f2()..." << std::endl;
    f2();
}
Run Code Online (Sandbox Code Playgroud)

我必须如何编译f1.cpp?我不想使用dlclose,dlerror,dlopen,dlsym ...最后我也想在main.cpp中也将f1.so用作共享库...而不使用dlclose,dlerror,dlopen,dlsym 。当我有一个f1.so时,我该如何编译main.cpp?

// main.cpp
#include <iostream>
int main()
{
    f1();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ g++ shared-libraries

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

使用着色器更改纹理某些片段的颜色

声明式编程语言 QML 允许将元素、它们的属性与着色器程序描述中的通用变量连接起来。例如,出于这些目的,有诸如ShaderEffectItem 之类的元素。在这里,例如,我们定义了一个特定的图像image.jpg。在source属性中,我们只设置此图像任何将在图像中更改,并且此属性已在片段着色器程序描述 f​​ragmentShader 中设置为统一的 sampler2D 源。qt_TexCoord0定义纹理的初始坐标。我们在所有纹理标量积 lowp float gray = dot (textureColor, vec4 (0.299, 0.587, 0.114, 0.0)) 上收到灰色;我们还在输出变量 gl_FragColor 中安装片段的颜色。

....
Item {
    id: main
    Image {
         id: img
         source: "images/image.jpg"
      }

    ShaderEffectItem {
       id: effect
       property real ratio: 1.0
        property variant source: ShaderEffectSource {            
             sourceItem: img;
             hideSource: true
        }

        fragmentShader:
          "
          varying highp vec2 qt_TexCoord0;
          uniform sampler2D source;
          uniform highp float ratio;
          void main(void)
          {
            lowp vec4 textureColor = …
Run Code Online (Sandbox Code Playgroud)

opengl shader opengl-es qml

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

我可以使用敏捷开发方法单独开发我的应用程序吗?

我可以使用敏捷开发方法单独开发我的应用程序(我认为这种方法是针对团队开发的).我可以使用的原则是什么?对不起,我的英语不好

methods agile

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

仅计算*.cpp和*.h类型的文件中的行

我已经关注了bash脚本.它只计算*.cpp中的行数.如果没有pugixml.cpp,我如何计算*.h文件中的行?

find . -type f  -name \*.cpp -and ! -name \pugixml.cpp -exec cat '{}' + | wc -l
Run Code Online (Sandbox Code Playgroud)

c++ linux bash shell

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

从另一个应用程序在Cygwin中运行bash命令

从用C++或python编写的Windows应用程序,我如何执行任意shell命令?

我的Cygwin安装通常是从以下bat文件启动的:

@echo off

C:
chdir C:\cygwin\bin

bash --login -i
Run Code Online (Sandbox Code Playgroud)

c++ python windows cygwin

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

使用C++ 11 Lambda函数更改vector(list,deque ...)中的所有元素

我有以下代码:

#include <iostream>
#include <vector>
#include <algorithm>

int main( int argc, char* argv[] )
{
    std::vector< int > obj;
    obj.push_back( 10 );
    obj.push_back( 20 );
    obj.push_back( 30 );
    std::for_each( obj.begin(), obj.end(), []( int x )
    { 
        return x + 2; 
    } );
    for( int &v : obj )
        std::cout << v << " ";
    std::cout << std::endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

结果是:10,20,30

我想使用新的C++ 11标准的Lambda函数更改vector(obj)中的所有元素.

这是执行for_each函数的代码:

template<class InputIterator, class Function>
Function for_each(InputIterator first, InputIterator last, Function f)
{
    for ( …
Run Code Online (Sandbox Code Playgroud)

c++ lambda c++11

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

在编译时未定义引用`__sync_val_compare_and_swap_4'错误,使用gcc 4.1.1和4.2.0对Sparc v8目标

使用crosstool脚本我在Cygwin下构建了Sparc架构的以下编译器gcc-4.1.1和4.2.0 20061024(预发布):

$ ./sparc-unknown-linux-gnu-gcc -v
Using built-in specs.
Target: sparc-unknown-linux-gnu
Configured with: /crosstool-0.43/build/sparc-unknown-linux-gnu/gcc-4.1.1-glibc-2.3.6/gcc-4.1.1/configure --target=sparc-unknown-linux-gnu --host=i686-host_pc-cygwin --prefix=/opt/crosstool/gcc-4.1.1-glibc-2.3.6/sparc-unknown-linux-gnu --with-headers=/opt/crosstool/gcc-4.1.1-glibc-2.3.6/sparc-unknown-linux-gnu/sparc-unknown-linux-gnu/include --with-local-prefix=/opt/crosstool/gcc-4.1.1-glibc-2.3.6/sparc-unknown-linux-gnu/sparc-unknown-linux-gnu --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atexit --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.1.1
Run Code Online (Sandbox Code Playgroud)

$ ./sparc-unknown-linux-gnu-gcc -v
Using built-in specs.
Target: sparc-unknown-linux-gnu
Configured with: /crosstool-0.43/build/sparc-unknown-linux-gnu/gcc-4.2-20061024-                           glibc-2.3.6/gcc-4.2-20061024/configure --target=sparc-unknown-linux-gnu --host=i                           686-host_pc-cygwin --prefix=/opt/crosstool/gcc-4.2-20061024-glibc-2.3.6/sparc-un                           known-linux-gnu --with-headers=/opt/crosstool/gcc-4.2-20061024-glibc-2.3.6/sparc                           -unknown-linux-gnu/sparc-unknown-linux-gnu/include --with-local-prefix=/opt/cros                           stool/gcc-4.2-20061024-glibc-2.3.6/sparc-unknown-linux-gnu/sparc-unknown-linux-g                           nu --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-__cxa_atex                           it --enable-languages=c,c++ --enable-shared --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.2.0 20061024 (prerelease)
Run Code Online (Sandbox Code Playgroud)

对我来说,我可以在我的程序中使用__sync_val_compare_and_swapAtomic-Builtins …

c c++ gcc sparc cross-compiling

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

如何在c ++中一次生成不同的随机数?

如何在c ++中一次生成不同的随机数?

现在我用

while ( flag )
{
   ....
   srand( time( NULL) ); 
   int rndSig = rand() % 10 + 1;
   ......
}
Run Code Online (Sandbox Code Playgroud)

但有一刻,所有数字都是平等的.如何在while循环中生成不同的数字?

c++ random std

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