小编Sud*_*rma的帖子

说明符和限定符之间的相关性?

constvolatile被称为cv-qualifier由C规格.

specifierqualifier(cv-qualifier)之间究竟有什么区别?限定符也是一个说明符吗?

是否必须qualifier只有左值?

什么是限定词以外的cv-qualifier

我的上述理解是否有意义?

c++ lvalue

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

交换属性a [i] == i [a]

对于内置类型的整数数组说

int a[10];
int i = 2;
a[i] = 10;
Run Code Online (Sandbox Code Playgroud)

或者

i[a] = 10;
Run Code Online (Sandbox Code Playgroud)

因为

a[i]是一个后缀表达式,*(a+i)或者*(i+a)因为加法的可交换属性.

我希望为用户定义的类型实现这一点

class Dummy
{
//
};
Run Code Online (Sandbox Code Playgroud)

可能吗?如果是,那怎么样?如果没有那么为什么?

编辑: - 我知道它很难看,但代码编译后: - g ++ -dumpversion 4.3.3

#include <stdio.h>
#include<iostream>
#include <string.h>
#include <malloc.h>
using namespace std;

int main()
{
    string ArrayS[10];
    2[ArrayS] = "ADASD" ;
    cout <<  2[ArrayS] << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++

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

3.4.1不合格的名称查找

根据C++标准: -

名称查找规则统一适用于所有名称(包括typedef-names(7.1.3),名称空间名称(7.3),概念名称(14.9),概念映射名称(14.9.2)和类名称( 9.1))语法允许在特定规则讨论的上下文中的这些名称.

名称查找规则适用于Overload解决方案发生之前?

我不明白背后必然有一些原因.

以下示例来自Book C++ in Nutshell: -

void func(int i)
{
  std::cout << "int: " << i << '\n';
}



namespace N 
{
  void func(double d)
  {
    std::cout << "double: " << std::showpoint << d << '\n';
  }

  void call_func(  )
  {
    // Even though func(int) is a better match, the compiler finds
    // N::func(double) first.
    func(3);
  }
}
Run Code Online (Sandbox Code Playgroud)

c++

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

什么是三重检查锁定模式

参考: - "现代C++设计:应用的通用编程和设计模式"作者:Andrei Alexandrescu第6章实现单例.

即使你放入挥发性物质,也不能保证双重检查锁定模式安全和便携.为什么会这样?

如果有人能够提供任何一个很好的链接来解释什么是宽松的记忆模型以及什么是双重检查模式的确切问题.{或者有人可以解释}

我曾经认为volatile已经解决了这个问题,但在我读完这本书之前似乎不正确.

c++ multithreading

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

声明在C++中使用之前?

以下代码进行编译,而名称"aNumber"在使用前未声明.

class A
{
    A()
        :aNumber(100)
    {
    }
    void foo()
    {
         aNumber = 0;

    }
    int aNumber;
};
Run Code Online (Sandbox Code Playgroud)

如果以上代码编译,那么为什么不遵循: -

A.
class Dummy
{
    void foo(INT);
    typedef int INT;
};
Run Code Online (Sandbox Code Playgroud)

B.通过成员变量进行默认初始化: -

class Dummy
{
    void foo(int y = x);
    int x;
};
Run Code Online (Sandbox Code Playgroud)

c++

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

函数说明符

virtual和inline是函数说明符.

它们只能在功能之前出现.{根据我的理解}.

那么,在下面的代码中什么是虚拟的?

class Base
{
//
};

class Derived :virtual public Base
{
};
Run Code Online (Sandbox Code Playgroud)

c++

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

Oracle时间戳UTC时间格式

CREATE TABLE DIALOGUE_TABLE(EXPIRE_TIME TIMESTAMP);
Run Code Online (Sandbox Code Playgroud)

以下代码片段位于存储过程中:

PO_EXPIRETIME  :- OUT PARAM of procedure a varchar2

SELECT TO_CHAR(SYS_EXTRACT_UTC(EXPIRE_TIME)) 
  INTO PO_EXPIRETIME 
  FROM DIALOGUE_TABLE; 
Run Code Online (Sandbox Code Playgroud)

当我从服务器运行Stored Proc时EXEC,打印PO_EXPIRETIME时间戳与UTC格式正确.

但是,当我从OCCI和客户端调用存储过程时,收到的时间戳不相同,但这是表中未实现UTC格式化的实际时间戳.

也许我想念的东西,但我不知道的是什么?我需要在客户端做些什么吗?

sql oracle plsql oracle11g

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

标签 统计

c++ ×6

lvalue ×1

multithreading ×1

oracle ×1

oracle11g ×1

plsql ×1

sql ×1