小编0x4*_*2D2的帖子

jQuery的$ a函数和对象如何?

我的意思是对象{} [object Object].它是如何做$(selector),并$.fn.init在同一时间?

你能给我一个简单的例子吗?

javascript jquery

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

decltype和typeof之间的区别?

关于decltype和的两个问题typeof:

  • decltypetypeof运营商之间有什么区别吗?
  • typeof在C++ 11中会变得过时吗?

c++ typeof decltype c++11

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

Const和非Const运算符重载

我有一个话题,我很困惑,我需要详细说明.它是使用const版本和非const版本重载的运算符.

// non-const
double &operator[](int idx) {
    if (idx < length && idx >= 0) {
        return data[idx];
    }
    throw BoundsError();
}
Run Code Online (Sandbox Code Playgroud)

我理解这个函数的一部分,取一个索引并检查它的逻辑,返回类中数组数据的索引.还有一个具有相同主体的函数,但函数调用为

const double &operator[](int idx) const
Run Code Online (Sandbox Code Playgroud)

为什么我们需要两个版本?

此示例问题也可能有助于详细说明.下面的每个实例使用哪个版本?

Array a(3);
a[0] = 2.0;
a[1] = 3.3;
a[2] = a[0] + a[1];
Run Code Online (Sandbox Code Playgroud)

我的假设是只调用const版本,a[2]因为我们不想冒险修改a[0]a[1].

谢谢你的帮助.

c++ const operator-overloading

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

在c ++中正确使用exit()?

我编写了一个简单的应用程序,它读取数据文件,解析文本,然后对该数据进行一些处理.数据文件在main()函数中打开.如果确定文件未正确打开,使用exit()函数是否是一种很好的编程习惯?例如:

if (!file.is_open() ){
     exit(1);
}
Run Code Online (Sandbox Code Playgroud)

此外,我的程序有一个单独的函数来解析文件中的数据.main()调用此函数.如果函数在数据中发现错误,我希望程序在打印错误消息后停止.在这种情况下,在我的解析函数中使用exit()函数是否可以接受?我问这个问题是因为,对我来说,允许一个函数自己退出程序而不将控制返回到main()函数似乎并不是很整洁.(如果这个问题看起来非常明显,我道歉.我是C++和编程的新手).

c++ function exit

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

为什么字符串未在范围内声明

我有以下代码:

#include <string>
#include <boost/thread/tss.hpp>

static boost::thread_specific_ptr<string> _tssThreadNameSptr;
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

g ++ -c -I $ BOOST_PATH tssNaming.h

tssNaming.h:7:错误:未在此范围内声明'string'

但我在我的包括字符串#include.

c++ boost-thread

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

初始化程序中的多个突变是否列出未定义的行为?

我很好奇初始化列表和序列点.我刚才读到初始化程序列表中的评估顺序是从左到右.如果是这样,那么评估点之间肯定会有某种序列点,我错了吗?那么说是以下有效代码?是否有任何导致其未定义的行为?

int i = 0;

struct S {
    S(...) {} 
    operator int() { return i; }
};

int main() {
    i = S{++i, ++i};
}
Run Code Online (Sandbox Code Playgroud)

任何和所有回复都表示赞赏.

c++ undefined-behavior initializer-list c++11

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

如何使负数的mod变为正数?

基本上,我需要(-3) % 5是"2"而不是"-3".Python产生"2",但C++产生"-3".不知道如何在C++中生成"2".谢谢!

c++

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

这是g ++中的错误吗?

#include <stdint.h>
#include <iostream>

using namespace std;

uint32_t k[] = {0, 1, 17};

template <typename T>
bool f(T *data, int i) {
    return data[0] < (T)(1 << k[i]);
}

int main() {
    uint8_t v = 0;
    cout << f(&v, 2) << endl;
    cout << (0 < (uint8_t)(1 << 17)) << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)


g++ a.cpp && ./a.out
1
0
Run Code Online (Sandbox Code Playgroud)

为什么我得到这些结果?

c++ gcc

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

类封闭的模板参数的默认参数

码:

template <typename element_type, typename container_type = std::deque<element_type> >
class stack
{
    public:
        stack() {}
        template <typename CT>
        stack(CT temp) : container(temp.begin(), temp.end()) {}
        bool empty();
   private:
       container_type container;
};

template <typename element_type, typename container_type = std::deque<element_type> >
bool stack<element_type, container_type>::empty()
{
    return container.empty();
}
Run Code Online (Sandbox Code Playgroud)

当我编译它时会给出错误.

类封闭的模板参数的默认参数 'bool stack<element_type,container_type>::empty()'

为什么编译器会抱怨,我该如何使它工作?

c++ templates

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

new []如果元素默认构造函数可以抛出?

考虑以下代码:

example_t* a = new example_t[8];
Run Code Online (Sandbox Code Playgroud)

class example_t有默认的ctor可以抛出,假设数组中第5个元素的构造抛出.是否有自动调用4个第一个元素的析构函数?这是一个定义明确的行为吗?

c++

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