问题列表 - 第31831页

如何让boost :: make_shared成为我班上的朋友

我编写了一个带有受保护构造函数的类,因此只能使用静态create()函数生成新实例,该函数将shared_ptr返回给我的类.为了提供有效的分配,我想在create函数中使用boost :: make_shared,但是编译器抱怨我的类构造函数在boost :: make_shared中受到保护.我决定将我的boost :: make_shared作为我班上的朋友,但我对语法感到困惑.我试过了

template< class T, class A1, class A2 >
friend boost::shared_ptr<Connection> boost::make_shared(const ConnectionManagerPtr&, const std::string&);
Run Code Online (Sandbox Code Playgroud)

但是编译器给了我语法错误.请帮忙.

c++ templates boost friend make-shared

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

`-pedantic`生成的这个编译器警告是什么意思?

这个GCC警告意味着什么?

cpfs.c:232:33: warning: ISO C99 requires rest arguments to be used
Run Code Online (Sandbox Code Playgroud)

相关的路线是:

__attribute__((format(printf, 2, 3)))
static void cpfs_log(log_t level, char const *fmt, ...);

#define log_debug(fmt, ...) cpfs_log(DEBUG, fmt, ##__VA_ARGS__)

log_debug("Resetting bitmap");
Run Code Online (Sandbox Code Playgroud)

最后一行是函数实现中的第232行.编译器标志是:

-g -Wall -std=gnu99 -Wfloat-equal -Wuninitialized -Winit-self -pedantic
Run Code Online (Sandbox Code Playgroud)

c gcc c99 variadic

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

关于C++拷贝构造函数有什么大惊小怪的?

可能重复:
我们何时必须使用复制构造函数?

为什么C++拷贝构造函数如此重要?我刚刚了解了它们,我不太清楚它们是什么.如果你使用指针,你似乎应该总是为你的类编写一个复制构造函数,但为什么呢?

谢谢,Boda Cydo.

c++ copy-constructor

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

变量本身是否消耗内存?

当我们声明一个变量时,变量本身是否会消耗内存?

 class IHaveNothing
{
}

class IHaveNullFields
{
    string @string = null;
    StringBuilder @StringBuilder = null;
}

class Program
{      
    static void Main(string[] args)
    {
        IHaveNothing nothing = new IHaveNothing();
        IHaveNullFields nullFields = new IHaveNullFields();
    }
}
Run Code Online (Sandbox Code Playgroud)

实例nullFields比实例没有消耗更多的内存吗?

编辑:如果null局部变量而不是类'null字段,它们也消耗内存吗?

c#

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

无法在此C程序中找到错误

我无法在这个C程序中找到错误.

#include <stdio.h>

int main()
{ 

    struct book 
    { 
        char name ; 
        float price ; 
        int pages ; 
    } ;

    struct book b[3] ;
    int i ; int k;
    for ( i = 0 ; i <= 2 ; i++ )
    { 
        printf ( "\nEnter name, price and pages: " ) ;
        k = scanf ( "%c %f %d", &b[i].name, &b[i].price, &b[i].pages ) ;
    } 
    for ( i = 0 ; i <= 2 ; i++ ) 
        printf ( "\n%c …
Run Code Online (Sandbox Code Playgroud)

c input scanf

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

什么"推ebp"在x86组合中意味着什么?

我反汇编了一个.exe文件并将其作为第一行.

push ebp
Run Code Online (Sandbox Code Playgroud)
  • 这是什么意思?
  • 为什么ebp
  • 它与pop命令有什么关系吗?即使我在拆卸中没有看到它!

x86 assembly

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

Android崩溃报告库(pre Froyo)

你知道Android的任何崩溃报告库吗?

我不想花很多时间来编写自己的报告系统.
输出可以发送到电子邮件或某种服务器.

我知道谷歌在Froyo中引入了崩溃报告,但我想要一些旧版本的系统.


让我们总结一下答案:

android crash-reports

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

"未知列",因为子查询子查询

我需要在子查询中执行子查询,导致'where子句'中的"未知列't1.product_id'".在我的例子中,它在第7行.如何解决这个问题呢?

SELECT *,product_id id,
    (SELECT GROUP_CONCAT (value ORDER By `order` ASC SEPARATOR ', ') 
    FROM (
        SELECT `order`,value 
        FROM slud_data 
        LEFT JOIN slud_types ON slud_types.type_id=slud_data.type_id 
        WHERE slud_data.product_id = t1.product_id 
          AND value!='' AND display=0 
        LIMIT 3
    ) tmp) text
FROM slud_products t1 
WHERE 
    now() < DATE_ADD(date,INTERVAL +ttl DAY) AND activated=1
    ORDER BY t1.date DESC
Run Code Online (Sandbox Code Playgroud)

在使用GROUP_CONCAT查询时忽略了LIMIT的问题

mysql sql subquery mysql-error-1054

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

如何禁用几行代码的GCC警告

在Visual C++中,可以使用#pragma warning (disable: ...).我还发现在GCC中你可以覆盖每个文件的编译器标志.我怎样才能为"下一行"做这个,或者使用GCC围绕代码区域推送/弹出语义?

c gcc pragma compiler-warnings

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

LINQ orderby vs IComparer

我想知道什么是更好用.

用于排序的IComparer类和Compare方法或列表上的LINQ orderby.两者都工作正常但哪一个更适合大型列表.

c# linq icomparer

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