小编0xD*_*EEF的帖子

继承和方法重载

为什么C++编译器会出现此错误?为什么我可以从B访问lol(),但无法访问rofl()[不带参数].捕获量在哪里?

class A
{
public:
   void lol(void) {}
   void rofl(void) { return rofl(0);}
   virtual void rofl(int x) {}
};

class B : public A
{
public:
   virtual void rofl(int x) {}
};

int _tmain(int argc, _TCHAR* argv[])
{
    A a;
   a.lol();
   a.rofl(1);
   a.rofl();

   B  b;
   b.lol();
   b.rofl(1);    
   b.rofl(); //ERROR -> B::rofl function does not take 0 arguments


   return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ inheritance overriding overloading

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

gcc -l选项和.la库文件

你能解释一下,如何用-l选项链接到.la文件吗?

就我的经验而言 - 我只链接了静态库(.a)文件.

现在我看一下Qt生成的Makefile并且无法弄清楚,当指定-l QtCore开关时,链接器如何使用/打开libQtCore.la文件,而不是查找libQtCore.a.

另外 - gcc手动说明,-l [库名]开关将包含lib [库名] .a,而不是lib [libraryname] .la.

c++ gcc shared

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

OpenSSL证书缺少密钥标识符

如何将这些部分添加到证书(我正在使用C++手动构建它).

    X509v3 Subject Key Identifier: 
        A4:F7:38:55:8D:35:1E:1D:4D:66:55:54:A5:BE:80:25:4A:F0:68:D0
    X509v3 Authority Key Identifier: 
        keyid:A4:F7:38:55:8D:35:1E:1D:4D:66:55:54:A5:BE:80:25:4A:F0:68:D0
Run Code Online (Sandbox Code Playgroud)

当然我的代码很好地构建了sertificate,除了那些键..:/

static X509 * GenerateSigningCertificate(EVP_PKEY* pKey)
{
    X509 *x;
    x = X509_new(); //create x509 certificate

    X509_set_version(x, NID_X509);
    ASN1_INTEGER_set(X509_get_serialNumber(x), 0x00000000); //set serial number
    X509_gmtime_adj(X509_get_notBefore(x), 0);
    X509_gmtime_adj(X509_get_notAfter(x),(long)60*60*24*365); //1 year
    X509_set_pubkey(x, pKey); //set pub key from just generated rsa

    X509_NAME *name;

    name = X509_get_subject_name(x);

    NAME_StringField(name, "C", "LV");
    NAME_StringField(name, "CN", "Point"); //common name
    NAME_StringField(name, "O", "Point"); //organization

    X509_set_subject_name(x, name); //save name fields to certificate
    X509_set_issuer_name(x, name); //save name fields to certificate

    X509_EXTENSION *ex; …
Run Code Online (Sandbox Code Playgroud)

c++ openssl key certificate

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

Storyboard.SetTarget与Storyboard.SetTargetName

为什么Storyboard.SetTargetName可以正常工作,但Storyboard.SetTarget却没有?在这里xaml -

    <Grid Grid.Row="0" ClipToBounds="True">
        <X:SmartContentControl  x:Name="smartContent"  Content="{Binding Path=MainContent}" ContentChanging="smartContent_ContentChanging">
            <X:SmartContentControl.RenderTransform>
                <TranslateTransform x:Name="translateTransformNew" X="0" Y="0"/>
            </X:SmartContentControl.RenderTransform>
        </X:SmartContentControl>
        <ContentControl Content="{Binding ElementName=smartContent, Path=LastImage}">
            <ContentControl.RenderTransform>
                <TranslateTransform x:Name="translateTransformLast" X="0" Y="0"/>
            </ContentControl.RenderTransform>
        </ContentControl>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

在这里C#

private void smartContent_ContentChanging(object sender, RoutedEventArgs e)
{
    Storyboard storyBoard = new Storyboard();
    DoubleAnimation doubleAnimation1 = new DoubleAnimation(0.0, -smartContent.RenderSize.Width, new Duration(new TimeSpan(0, 0, 0, 0, 500)));
    DoubleAnimation doubleAnimation2 = new DoubleAnimation(smartContent.RenderSize.Width, 0.0, new Duration(new TimeSpan(0, 0, 0, 0, 500)));

    doubleAnimation1.AccelerationRatio = 0.5;
    doubleAnimation2.DecelerationRatio = 0.5;
    storyBoard.Children.Add(doubleAnimation1);
    storyBoard.Children.Add(doubleAnimation2);
    Storyboard.SetTarget(doubleAnimation1, this.translateTransformLast); //--- this …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml storyboard

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

PL/SQL如何选择表类型局部变量

PROCEDURE "ARCHIVE_CASE_LIST"
(
    a_case_id_list IN INLISTNUMBERS
)
IS
  l_customers INLISTNUMBERS;
Run Code Online (Sandbox Code Playgroud)

INLISTNUMBERS是Oracle数字表;

如何准备预先计算的客户列表并将它们存储在l_customers中,这样我就不需要在其他更新/选择语句中使用那个长选择语句?

  insert into table(l_customers) <-- fail
    select distinct case1.customer_id into l_customers from case case1
      where case1.case_id in (select column_value from table(a_case_id_list)) and
        not exists (select 0 from case case2 where case2.customer_id = case1.customer_id and
          case2.lifecycle_code not in (code_id('LIFECYCLE','A'), code_id('LIFECYCLE','D')));

  update customer set customer.lifecycle_code = code_id('LIFECYCLE','A')
    where customer.customer_id in (select column_value from table(l_customers));

  open l_persons for 
    select person_id from person where person.customer_id in
      (select column_value from table(l_customers));
Run Code Online (Sandbox Code Playgroud)

oracle select plsql

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

为什么在头文件中定义的C++虚函数可能无法在vtable中编译和链接?

情况如下.我有共享库,其中包含类定义 -

QueueClass : IClassInterface
{
   virtual void LOL() { do some magic}
}
Run Code Online (Sandbox Code Playgroud)

我的共享库初始化类成员

QueueClass *globalMember = new QueueClass();
Run Code Online (Sandbox Code Playgroud)

我的共享库导出C函数返回指向globalMember的指针 -

void * getGlobalMember(void) { return globalMember;}
Run Code Online (Sandbox Code Playgroud)

我的应用程序像这样使用globalMember

((IClassInterface*)getGlobalMember())->LOL();
Run Code Online (Sandbox Code Playgroud)

现在非常简单的东西 - 如果我不从共享库引用LOL,那么LOL没有链接并从应用程序调用它引发异常.原因 - VTABLE包含nul代替指向LOL()函数的指针.

当我将.L文件中的LOL()定义移动到.cpp时,突然它出现在VTABLE中,一切都很好.是什么解释了这种行为?!(gcc编译器+ ARM架构_)

c++ virtual interface

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

Qt培训提示和技巧

我刚到新公司,之前从未与Qt合作,但我的任务是在2周内学习Qt,所以我可以给别人培训.所以我有2个星期的时间学习Qt并准备2周的Qt教学​​.我死了!请指出一些常见的错误,技巧,风格,以便我可以使训练更好一点!

谢谢!

编辑:我用过这本书 - 用Qt 4进行C++ GUI编程,非常好.例子非常好.我还有一些来自previos培训的培训材料.那是2周的训练,我们几乎涵盖了所有Qt方面!好一个!;)

qt

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

OpenSSL 使用自定义主题字段生成并签署证书

我需要使用自定义主题 (, SERIALNUMBER=...,) 创建并签署(我是 CA)证书。

到目前为止,我已经修改了 openssl 配置文件,因此我能够在主题中包含自定义字段。

[ new_oids ]
SERIALNUMBER = 1.2.3.4.1333
Run Code Online (Sandbox Code Playgroud)

问题是,签署此类证书后,新字段会以奇怪的数字格式出现 -

C = FI
O = Maahanmuuttovirasto
1.2.3.4.1333 = 00REINIS00
Run Code Online (Sandbox Code Playgroud)

我应该在 openssl 配置文件中更改什么位置以生成具有正常字段名称的证书?我如何告诉签名过程 1.2.3.4.1333 应编码为“序列号”。

谢谢你,牛肉

openssl asn.1 certificate pki x509

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

WPF Window SizeToContent 超出桌面大小

WPFWindow SizeToContent超出桌面大小。我想这可能是由于我的多显示器设置造成的。我应该如何限制Window只增长到活动的大小Window(不超过最大化)?

wpf multiple-monitors sizetocontent

5
推荐指数
0
解决办法
705
查看次数

WPF C#如何在代码中创建THIS绑定?

我想知道,如何创建这个绑定,因为Line.X2不是依赖属性!:(

<Line Y1="0" X1="0" Y2="0" Stroke="Blue" StrokeThickness="3" Margin="0 -2 0 -2" X2="{Binding Path=RenderSize.Width, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type StackPanel}}}"/>
Run Code Online (Sandbox Code Playgroud)

wpf binding dependencies properties

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